예제 #1
0
        private void btnHttpGet_Click(object sender, EventArgs e)
        {
            //HttpWebClient client = new HttpWebClient();
            //client.Encoding = Encoding.UTF8;
            //txtHttpGetResult.Text = client.OpenRead(txtUrlToGet.Text);
            DateTime       dtNow = DateTime.Now;
            HttpStatusCode statusCode;
            string         resultText = HttpPostManager.GetStringData(txtUrlToGet.Text, out statusCode, maxReadLen: int.Parse(txtGetLength.Text));

            txtHttpGetResult.Text = string.Format("{0}:{1}{2}{3}",
                                                  statusCode, (DateTime.Now - dtNow).TotalMilliseconds, Environment.NewLine, resultText);
        }
예제 #2
0
        public static void LoadServerConfig()
        {
            try
            {
                string         url        = ConfigurationManager.AppSettings["ServerSerUrl"];
                HttpStatusCode statusCode = (HttpStatusCode)0;
                byte[]         data       = HttpPostManager.GetPostData(url, null, out statusCode);

                if (data != null && data.Length > 0)
                {
                    MessageStructure ms = new MessageStructure(data);
                    int    length       = ms.ReadInt();
                    int    errcode      = ms.ReadInt();
                    int    msgid        = ms.ReadInt();
                    string errorInfo    = ms.ReadString();
                    int    actionId     = ms.ReadInt();
                    string st           = ms.ReadString();
                    int    lastloginid  = ms.ReadInt();
                    int    listsize     = ms.ReadInt();
                    for (int i = 0; i < listsize; ++i)
                    {
                        ServerInfo info = new ServerInfo();
                        info.ID           = ms.ReadInt();
                        info.ServerName   = ms.ReadString();
                        info.Status       = ms.ReadString();
                        info.StatusCode   = ms.ReadInt();
                        info.ServerUrl    = ms.ReadString();
                        info.Weight       = ms.ReadInt();
                        info.TargetServer = ms.ReadInt();
                        Set.Add(info);
                    }

                    TraceLog.WriteLine("Request server list successful!");
                }
                else
                {
                    TraceLog.ReleaseWrite("Request server list fail result:{0}, request url:{1}", data, url);
                    return;
                }
            }
            catch (Exception ex)
            {
                new BaseLog().SaveLog(ex);
                return;
            }
        }
예제 #3
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        public override bool CheckLogin()
        {
            int    Act  = 4;
            string Sign = string.Format("{0}{1}{2}{3}{4}", AppId.ToNotNullString(), Act, Uin.ToNotNullString(), SessionID.ToNotNullString(), AppKey.ToNotNullString());

            Sign = HashToMD5Hex(Sign);

            string urlData = string.Format("{0}?AppId={1}&Act={2}&Uin={3}&SessionID={4}&Sign={5}",
                                           Url.ToNotNullString(),
                                           AppId.ToNotNullString(),
                                           Act,
                                           Uin.ToNotNullString(),
                                           SessionID.ToNotNullString(),
                                           Sign.ToNotNullString()
                                           );

            string result = HttpPostManager.GetStringData(urlData);

            try
            {
                if (string.IsNullOrEmpty(result))
                {
                    TraceLog.ReleaseWrite("91sdk login fail result:{0},request url:{1}", result, urlData);
                    return(false);
                }
                SDKError sdk = JsonUtils.Deserialize <SDKError>(result);
                if (sdk.ErrorCode != "1")
                {
                    TraceLog.ReleaseWrite("91sdk login fail:{0},request url:{1}", sdk.ErrorDesc, urlData);
                    return(false);
                }
                string[] arr = SnsManager.LoginByRetail(_retailID, Uin);
                this.UserID     = arr[0];
                this.PassportID = arr[1];
                return(true);
            }
            catch (Exception ex)
            {
                new BaseLog().SaveLog(ex);
                return(false);
            }

            //return !string.IsNullOrEmpty(UserID) && UserID != "0";
        }
예제 #4
0
        public static bool SendServerStatus(ServerStatus status, int activeNum)
        {
            string Sign    = "3f261d4f2f8941ea90552cf7507f021b";
            string addr    = ConfigurationManager.AppSettings["ServerStatusAddr"];
            string url     = addr + "/Service.aspx?d=";
            string urlData = string.Format("MsgId={0}&Sid={1}&Uid={2}&St={3}&ActionId={4}&GameID={5}&ServerID={6}&Status={7}&ActiveNum={8}&ServerUrl={9}&Sign={10}",
                                           0,
                                           0,
                                           0,
                                           0,
                                           1002,
                                           2,
                                           GameEnvironment.ProductServerId,
                                           status.ToInt(),
                                           activeNum,
                                           ConfigUtils.GetSetting("Game.IpAddress") + ":" + ConfigUtils.GetSetting("Game.Port"),
                                           Sign
                                           );
            string getUrlData = url + HttpUtility.UrlEncode(urlData, Encoding.UTF8);

            try
            {
                string result = HttpPostManager.GetStringData(getUrlData);
                if (string.IsNullOrEmpty(result))
                {
                    TraceLog.ReleaseWrite("Submit server status fail result:{0}, request url:{1}", result, getUrlData);
                    return(true);
                }
                else
                {
                    TraceLog.WriteLine("Submit server status successful:{0},{1},{2}", addr, status, activeNum);
                }
            }
            catch (Exception ex)
            {
                new BaseLog().SaveLog(ex);
                return(false);
            }
            return(false);
        }
예제 #5
0
        private string Send(string param)
        {
            string url = ConfigHelper.GetSetting("sendurl");

            return(HttpPostManager.GetStringData(url, param));
        }