Exemplo n.º 1
0
        //private static void ConfigureCertificateValidatation(
        //    bool validateCertificates,
        //    out System.Net.SecurityProtocolType protocolType,
        //    out RemoteCertificateValidationCallback prevValidator)
        //   {
        //       prevValidator = null;
        //       protocolType = (System.Net.SecurityProtocolType)0;

        //       if (!validateCertificates)
        //       {
        //           protocolType = System.Net.ServicePointManager.SecurityProtocol;
        //           System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls;
        //           prevValidator = System.Net.ServicePointManager.ServerCertificateValidationCallback;
        //           System.Net.ServicePointManager.ServerCertificateValidationCallback = (sender, cert, chain, sslPolicyErrors) => true;
        //       }
        //   }

        public static void DoLoginReqAction(AuthPackage cmd, LoginAuthRespCallBack cb)
        {
            respcb = cb;
            LoginwReqPack req = new LoginwReqPack();

            req.parms = JsonConvert.SerializeObject(cmd);
            string jsonstr = JsonConvert.SerializeObject(req);

            IHttpContent content = new StringContent(jsonstr, System.Text.Encoding.UTF8, "application/json");

            client.Post(new Uri(url), content, HttpCompletionOption.AllResponseContent, r =>
            {
                if (r.IsSuccessStatusCode)
                {
                    string resp_str = r.ReadAsString();
                    try
                    {
                        AuthPackageResp resp = JsonConvert.DeserializeObject <AuthPackageResp>(resp_str);
                        respcb(resp);
                    }
                    catch (Exception e)
                    {
                        Debug.LogError("Json Deserialize err:" + e.Message.ToString());
                    }
                }
            });
        }
Exemplo n.º 2
0
 static string EncodeToken(AuthPackage auth_package)
 {
     return(string.Format("{0}@{1}@{2}@{3}@{4}", Crypt.Base64Decode(auth_package.openId),
                          Crypt.Base64Decode(auth_package.sdk),
                          Crypt.Base64Decode(auth_package.serverId),
                          Crypt.Base64Decode(auth_package.pf),
                          Crypt.Base64Decode(auth_package.userData)));
 }
Exemplo n.º 3
0
        public static void DoLoginAction(AuthPackage package)
        {
            if (state != Enum_Login_Auth_State.SEND_LOGIN)
            {
                Debug.LogError("不是第一次登录,也不是重新登录的情况下,执行DoLoginAction函数,loginState:" + state);
                return;
            }

            string token = EncodeToken(package);

            Crypt.SetDesKey(BitConverter.GetBytes(secret));
            byte[] etoken = Crypt.DesEncrypt(Encoding.UTF8.GetBytes(token));

            state = Enum_Login_Auth_State.LOGIN_RESULT;
            SendMessage(etoken);
        }