Пример #1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            this.Response.ContentType = "text/plain";


            string     imei = this.Request["imei"];
            Msg        msg  = UserLoginModel.Login(imei);
            JsonArray  json = new JsonArray();
            GsonHelper gson = new GsonHelper();

            if (msg.Status)//支持多身份
            {
                List <Tbl_User> list = msg.UserData as List <Tbl_User>;


                for (int i = 0; i < list.Count; i++)
                {
                    LoginRet oLogin = new LoginRet();
                    oLogin.UserName = list[i].Name;
                    oLogin.Identify = list[i].Access;
                    oLogin.Status   = 1;
                    json.Add(JsonValue.Parse(gson.GetSerializerString(oLogin)));
                }
            }
            else
            {
                LoginRet oLogin = new LoginRet();
                oLogin.Message = msg.Message;
                oLogin.Status  = 0;
                json.Add(JsonValue.Parse(gson.GetSerializerString(oLogin)));
            }

            this.Context.Response.Write(json);
        }
Пример #2
0
    public override int GetHashCode()
    {
        int hash = 1;

        if (Error != 0)
        {
            hash ^= Error.GetHashCode();
        }
        if (LoginRet != 0)
        {
            hash ^= LoginRet.GetHashCode();
        }
        if (Uid != 0)
        {
            hash ^= Uid.GetHashCode();
        }
        if (UserName.Length != 0)
        {
            hash ^= UserName.GetHashCode();
        }
        if (_unknownFields != null)
        {
            hash ^= _unknownFields.GetHashCode();
        }
        return(hash);
    }
Пример #3
0
        protected void Page_Load(object sender, EventArgs e)
        {
            string username = this.Request["username"];
            string psd      = this.Request["psd"];
            string imei     = this.Request["imei"];

            Msg msg = UserLoginModel.Login(username, psd, imei);
            JavaScriptSerializer jss = new JavaScriptSerializer();

            if (msg.Status)
            {
                Tbl_User oUser    = msg.UserData as Tbl_User;
                LoginRet loginRet = new LoginRet();
                loginRet.Identify = oUser.Access;
                loginRet.UserName = oUser.Name;
                loginRet.Status   = 1;
                this.Response.Write(jss.Serialize(loginRet));
            }
            else
            {
                LoginRet loginRet = new LoginRet();
                loginRet.Message = msg.Message;
                loginRet.Status  = 0;
                this.Response.Write(jss.Serialize(loginRet));
            }
        }
Пример #4
0
        public void Get()
        {
            this.Context.Response.ContentType = "text/plain";

            if (string.IsNullOrEmpty(this.Context.Request.QueryString["username"]))
            {
                string imei = this.Context.Request.QueryString["imei"];
                Msg    msg  = UserLoginModel.Login(imei);
                JavaScriptSerializer jss = new JavaScriptSerializer();
                if (msg.Status)
                {
                    Tbl_User oUser  = msg.UserData as Tbl_User;
                    LoginRet oLogin = new LoginRet();
                    oLogin.UserName = oUser.Name;
                    oLogin.Indetify = oUser.Access;
                    oLogin.Status   = 1;
                    this.Context.Response.Write(jss.Serialize(oLogin));
                    this.Context.Response.Write("#");
                }
                else
                {
                    Tbl_User oUser  = msg.UserData as Tbl_User;
                    LoginRet oLogin = new LoginRet();

                    oLogin.Status = 0;
                    this.Context.Response.Write(jss.Serialize(oLogin));
                    this.Context.Response.Write("#");
                }
            }
            else
            {
                string username          = this.Context.Request.QueryString["username"];
                string psd               = this.Context.Request.QueryString["psd"];
                string imei              = this.Context.Request.QueryString["imei"];
                Msg    msg               = UserLoginModel.Login(username, psd, imei);
                JavaScriptSerializer jss = new JavaScriptSerializer();

                if (msg.Status)
                {
                    Tbl_User oUser    = msg.UserData as Tbl_User;
                    LoginRet loginRet = new LoginRet();
                    loginRet.Indetify = oUser.Access;
                    loginRet.UserName = oUser.Name;
                    loginRet.Status   = 1;
                    this.Context.Response.Write(jss.Serialize(loginRet));
                    this.Context.Response.Write("#");
                }
                else
                {
                    LoginRet loginRet = new LoginRet();
                    loginRet.Message = msg.Message;
                    loginRet.Status  = 0;
                    this.Context.Response.Write(jss.Serialize(loginRet));
                    this.Context.Response.Write("#");
                }
            }
        }
Пример #5
0
        void xd_OnReceiveLogin(LoginRet obj)
        {
            float a = 0f;

            a = xd.Convert2Float(obj.ClientType, 3);

            if (obj.ret == 0)
            {
                SubscibeDevStat();
            }

            System.Diagnostics.Trace.WriteLine("xd_OnReceiveLogin ClientName:" + obj.ClientName + ",ClientType:" + obj.ClientType + ",ret:" + obj.ret + System.Environment.NewLine);
        }
Пример #6
0
    /// <summary>
    ///  登陆回调
    /// </summary>
    /// <param name="jsonRet">Json ret.</param>
    void OnLoginNotify(string jsonRet)
    {
        Debug.Log("OnLoginNotify=" + jsonRet);
        LoginRet ret = LoginRet.ParseJson(jsonRet);

        if (ret == null)
        {
            //登陆失败
            return;
        }

        /*
         *  loginRet.platform表示当前的授权平台, 值类型为ePlatform, 可能值为ePlatform_QQ, ePlatform_Weixin
         *     loginRet.flag值表示返回状态, 可能值(eFlag枚举)如下:
         *       eFlag_Succ: 返回成功, 游戏接收到此flag以后直接读取LoginRet结构体中的票据进行游戏授权流程.
         *       eFlag_QQ_NoAcessToken: 手Q授权失败, 游戏接收到此flag以后引导用户去重新授权(重试)即可.
         *       eFlag_QQ_UserCancel: 用户在授权过程中
         *       eFlag_QQ_LoginFail: 手Q授权失败, 游戏接收到此flag以后引导用户去重新授权(重试)即可.
         *       eFlag_QQ_NetworkErr: 手Q授权过程中出现网络错误, 游戏接收到此flag以后引导用户去重新授权(重试)即可.
         *     loginRet.token是一个List<TokenRet>, 其中存放的TokenRet有type和value, 通过遍历Vector判断type来读取需要的票据. type(TokenType)类型定义如下:
         *       eToken_QQ_Access,
         *       eToken_QQ_Pay,
         *       eToken_WX_Access,
         *       eToken_WX_Refresh
         */

        switch (ret.flag)
        {
        case CallbackFlag.eFlag_Succ:
            flag = true;
            // 登陆成功, 可以读取各种票据
            platform = ret.platform;
            if (EPlatform.ePlatform_Weixin == platform)
            {
                //微信登陆成功
                WGPlatform.Instance.WGQueryMyWXInfo();
            }
            else if (EPlatform.ePlatform_QQ == platform)
            {
                //QQ登陆成功
                WGPlatform.Instance.WGQueryMyQQInfo();
            }
            else if (EPlatform.ePlatform_QQHall == platform)
            {
                //大厅登陆成功
            }
            Application.LoadLevel("guanka");
            break;

        // 游戏逻辑,对登陆失败情况分别进行处理
        case CallbackFlag.eFlag_Local_Invalid:
            // 自动登录失败, 需要重新授权, 包含本地票据过期, 刷新失败登所有错误
            break;

        case CallbackFlag.eFlag_WX_UserCancel:
        case CallbackFlag.eFlag_WX_NotInstall:
        case CallbackFlag.eFlag_WX_NotSupportApi:
        case CallbackFlag.eFlag_WX_LoginFail:
        default:
            break;
        }
    }
Пример #7
0
    private DataGenerator()
    {
        // 读取游戏对事件的配置
        callback = CallbackStates.Load();
        if (callback == null)
        {
            callback = new CallbackStates();
        }

        // 登录数据
        loginSucc          = new LoginRet();
        loginSucc.flag     = (int)eFlag.eFlag_Succ;
        loginSucc.desc     = ":-) , QQ授权成功 cb: content: success statusCode: 200";
        loginSucc.platform = (int)ePlatform.ePlatform_QQ;
        loginSucc.pf_key   = "e9638c4ea7295ae02ebf1f529239bd65";
        loginSucc.open_id  = "D51F963BA3E2571ABD8244D95F9B9AD0";
        loginSucc.pf       = "desktop_m_qq-73213123-android-00000000-qq-100703379-D51F963BA3E2571ABD8244D95F9B9AD0";
        List <TokenRet> token = new List <TokenRet>();

        token.Add(new TokenRet(eTokenType.eToken_QQ_Access, "B8B01FC091389DF970D534AE6003B54D", 1465110708));
        token.Add(new TokenRet(eTokenType.eToken_QQ_Pay, "48E5BC4FC984CDF842CDC64D32B669E8", 1457939508));
        loginSucc.token = token;

        loginFail          = new LoginRet();
        loginFail.flag     = (int)eFlag.eFlag_Error;
        loginFail.desc     = "Login fail";
        loginFail.platform = (int)ePlatform.ePlatform_QQ;
        loginFail.open_id  = "D51F963BA3E2571ABD8244D95F9B9AD0";

        // 实名认证
        authSucc          = new RealNameAuthRet();
        authSucc.flag     = (int)eFlag.eFlag_Succ;
        authSucc.desc     = "实名认证成功";
        authSucc.platform = (int)ePlatform.ePlatform_QQ;

        authFail           = new RealNameAuthRet();
        authFail.flag      = (int)eFlag.eFlag_Error;
        authFail.desc      = "实名认证失败";
        authFail.platform  = (int)ePlatform.ePlatform_QQ;
        authFail.errorCode = RealNameAuthErrCode.eErrCode_InvalidIDCard;

        // 分享数据
        shareSucc          = new ShareRet();
        shareSucc.flag     = (int)eFlag.eFlag_Succ;
        shareSucc.desc     = "Share success";
        shareSucc.platform = (int)ePlatform.ePlatform_QQ;
        shareSucc.extInfo  = "QQ share extInfo";

        shareFail          = new ShareRet();
        shareFail.flag     = (int)eFlag.eFlag_Error;
        shareFail.desc     = "Share fail";
        shareFail.platform = (int)ePlatform.ePlatform_QQ;
        shareFail.extInfo  = "QQ share extInfo";

        // 关系链数据
        relationSucc          = new RelationRet();
        relationSucc.flag     = (int)eFlag.eFlag_Succ;
        relationSucc.desc     = "com.tencent.msdk.remote.api.QueryQQFriends ret: 0 msg: success";
        relationSucc.platform = (int)ePlatform.ePlatform_QQ;
        PersonInfo personInfo = new PersonInfo();

        personInfo.nickName      = "demo玩家Blwn2🕶⚽ ➕ ❤ = I love football";
        personInfo.openId        = "D51F963BA3E2571ABD8244D95F9B9AD0";
        personInfo.pictureSmall  = "http://q.qlogo.cn/qqapp/100703379/D51F963BA3E2571ABD8244D95F9B9AD0/40";
        personInfo.pictureMiddle = "http://q.qlogo.cn/qqapp/100703379/D51F963BA3E2571ABD8244D95F9B9AD0/40";
        personInfo.pictureLarge  = "http://q.qlogo.cn/qqapp/100703379/D51F963BA3E2571ABD8244D95F9B9AD0/100";
        personInfo.isFriend      = false;
        personInfo.gender        = "男";
        relationSucc.persons.Add(personInfo);

        relationCleanLoc      = new RelationRet();
        relationCleanLoc.flag = (int)eFlag.eFlag_Succ;
        relationCleanLoc.desc = "{\"msg\":\"success\",\"ret\":\"0\"}";

        relationFail      = new RelationRet();
        relationFail.flag = (int)eFlag.eFlag_Error;
        relationFail.desc = "Query relation fail";

        // 第三方拉起游戏数据
        wakeupRet          = new WakeupRet();
        wakeupRet.flag     = eFlag.eFlag_NeedSelectAccount;
        wakeupRet.platform = (int)ePlatform.ePlatform_QQ;
        wakeupRet.open_id  = "7675FCD4A008A6BBA75809D54CFC9BE2";
        wakeupRet.extInfo.Add(new KVPair("platform", "qq_m"));
        wakeupRet.extInfo.Add(new KVPair("leftViewText", "游戏详情"));
        wakeupRet.extInfo.Add(new KVPair("launchfrom", "sq_gamecenter"));
        wakeupRet.extInfo.Add(new KVPair("fling_action_key", "2"));
        wakeupRet.extInfo.Add(new KVPair("current_uin", "7675FCD4A008A6BBA75809D54CFC9BE2"));
        wakeupRet.extInfo.Add(new KVPair("openid", "7675FCD4A008A6BBA75809D54CFC9BE2"));
        wakeupRet.extInfo.Add(new KVPair("fling_code_key", "1099963824"));
        wakeupRet.extInfo.Add(new KVPair("atoken", "B8B01FC091389DF970D534AE6003B54D"));
        wakeupRet.extInfo.Add(new KVPair("ptoken", "48E5BC4FC984CDF842CDC64D32B669E8"));

        // 群相关数据
        groupSucc           = new GroupRet();
        groupSucc.flag      = (int)eFlag.eFlag_Succ;
        groupSucc.platform  = (int)ePlatform.ePlatform_QQ;
        groupSucc.desc      = "call WGBindQQGroup finished ,but not sure succ or failed";
        groupSucc.errorCode = 0;
        QQGroup qqgroup = new QQGroup();

        qqgroup._groupId   = "groupId0";
        qqgroup._groupName = "_groupName0";
        QQGroup qqgroup1 = new QQGroup();

        qqgroup1._groupId   = "groupId1";
        qqgroup1._groupName = "_groupName1";
        List <QQGroup> qqGroups = new List <QQGroup>();

        qqGroups.Add(qqgroup);
        qqGroups.Add(qqgroup1);
        QQGroupInfoV2 qqGroupInfoV2 = new QQGroupInfoV2();

        qqGroupInfoV2._guildId   = "1"; qqGroupInfoV2._guildName = "name";
        qqGroupInfoV2._relation  = 3; qqGroupInfoV2._qqGroups = qqGroups;
        groupSucc.mQQGroupInfoV2 = qqGroupInfoV2;

        groupFail           = new GroupRet();
        groupFail.flag      = (int)eFlag.eFlag_Error;
        groupFail.desc      = "com.tencent.msdk.qq.group.QueryQQGroup ret: -10000 msg: 2002,没有绑定记录,请检查公会id和区id。";
        groupFail.errorCode = 2002;

        // 微信卡卷数据
        cardSucc          = new CardRet();
        cardSucc.flag     = (int)eFlag.eFlag_Succ;
        cardSucc.platform = (int)ePlatform.ePlatform_None;
        cardSucc.open_id  = "oGRTijiYT4CaRfydUbDFR25kAmwQ";
        cardSucc.extInfo.Add(new KVPair("wxapi_add_card_to_wx_card_list", "{\"card_list\":[{\"card_id\":\"pe7Gmjg3EpKtnwzNAGHMGJhNKSo4\",\"" +
                                        "card_ext\":\"{\\\"code\\\":\\\"\\\",\\\"openid\\\":\\\"\\\",\\\"timestamp\\\":\\\"1111111111\\\"," +
                                        "\\\"signature\\\":\\\"sdffsfffff\\\"}\",\"is_succ\":0}]}"));

        cardFail          = new CardRet();
        cardFail.flag     = (int)eFlag.eFlag_Error;
        cardFail.platform = (int)ePlatform.ePlatform_None;
        cardFail.desc     = "Bind card fail";

        // Lbs数据
        locationSucc           = new LocationRet();
        locationSucc.flag      = (int)eFlag.eFlag_Succ;
        locationSucc.platform  = (int)ePlatform.ePlatform_QQ;
        locationSucc.desc      = "com.tencent.msdk.remote.api.GetLocationInfo ret: 0 msg: success";
        locationSucc.latitude  = 22.547855;
        locationSucc.longitude = 113.94498;

        locationFail           = new LocationRet();
        locationFail.flag      = (int)eFlag.eFlag_LbsNeedOpenLocationService;
        locationFail.platform  = (int)ePlatform.ePlatform_None;
        locationFail.desc      = "location service is closed!";
        locationFail.latitude  = 0;
        locationFail.longitude = 0;

        nearbySucc               = new RelationRet();
        relationSucc.flag        = (int)eFlag.eFlag_Succ;
        relationSucc.desc        = "com.tencent.msdk.remote.api.QueryNearbyPlayer ret: 0 msg: success";
        relationSucc.platform    = (int)ePlatform.ePlatform_QQ;
        personInfo               = new PersonInfo();
        personInfo.nickName      = "demo玩家B";
        personInfo.openId        = "D51F963BA3E2571ABD8244D95F9B9AD0";
        personInfo.distance      = 2;
        personInfo.timestamp     = 1458728556;
        personInfo.isFriend      = true;
        personInfo.gender        = "男";
        personInfo.pictureSmall  = "http://q.qlogo.cn/qqapp/100703379/D51F963BA3E2571ABD8244D95F9B9AD0/40";
        personInfo.pictureMiddle = "http://q.qlogo.cn/qqapp/100703379/D51F963BA3E2571ABD8244D95F9B9AD0/40";
        personInfo.pictureLarge  = "http://q.qlogo.cn/qqapp/100703379/D51F963BA3E2571ABD8244D95F9B9AD0/100";
        relationSucc.persons.Add(personInfo);
        personInfo               = new PersonInfo();
        personInfo.nickName      = "MSDK-qingcui2";
        personInfo.openId        = "57388C7E931F9D12AC8C86E9C78655C8";
        personInfo.distance      = 2;
        personInfo.timestamp     = 1458728597;
        personInfo.isFriend      = true;
        personInfo.gender        = "女";
        personInfo.pictureSmall  = "http://q.qlogo.cn/qqapp/100703379/57388C7E931F9D12AC8C86E9C78655C8/40";
        personInfo.pictureMiddle = "http://q.qlogo.cn/qqapp/100703379/57388C7E931F9D12AC8C86E9C78655C8/40";
        personInfo.pictureLarge  = "http://q.qlogo.cn/qqapp/100703379/57388C7E931F9D12AC8C86E9C78655C8/100";
        relationSucc.persons.Add(personInfo);

        nearbyFail          = new RelationRet();
        nearbyFail.flag     = (int)eFlag.eFlag_LbsNeedOpenLocationService;
        nearbyFail.platform = (int)ePlatform.ePlatform_None;
        nearbyFail.desc     = "location service is closed!";

        //web View 数据
        webviewRet      = new WebviewRet();
        webviewRet.flag = 0;
        webviewRet.desc = "浏览器打开关闭回调,0" + eFlag.eFlag_Succ + "为打开回调," + eFlag.eFlag_Webview_closed + "为关闭回调";

        groupUnbind      = new GroupRet();
        groupUnbind.flag = 0;
        groupUnbind.desc = "解绑成功";
    }