Contains data about sign-in result.
Example #1
0
        /// <summary>
        /// 登录
        /// </summary>
        /// <param name="name">用户名</param>
        /// <param name="pwd">密码</param>
        /// <returns>登录结果</returns>
        public string Login(string name, string pwd)
        {
            try
            {
                resp = client.Login(name, pwd, false);
                switch (resp.Message)
                {
                    case "invalidate_email":
                        return "邮件地址格式错误";
                    case "wrong_email":
                        return "用户不存在";
                    case "wrong_password":
                        return "密码错误";
                    case "ok":
                        {
                            UserName = resp.UserName;
                            return "登录成功";
                        }

                    default:
                        return "网络连接错误";
                }
            }
            catch (Exception e)
            {
                Debug.WriteLine(e.Message);
                return "网络连接错误,如果您设值了代理,请尝试取消.";
            }
        }
Example #2
0
        /// <summary>
        /// Signs in with user email and password and
        /// receives response from DoubanFM server.
        /// </summary>
        /// <param name="email">User email.</param>
        /// <param name="password">User password.</param>
        /// <param name="saveStatus">Indicates if this client should
        /// save user's status when sign-in succeeded.</param>
        /// <returns></returns>
        public LoginResponse Login(string email, string password,
            bool saveStatus)
        {
            //Get response via http post.
            var jResp = ConnectionManager.GetPostResponse(
                ConnectionManager.LoginUri,
                new LoginRequestForm(new LoginRequest(email, password)));

            //Create response from json.
            LoginResponse resp = new LoginResponse(jResp);

            if (resp.Result == LoginResult.Success)
            {
                //Update local storage for user status.
                StorageManager.ClearUserStatus();
                _status = new UserStatus()
                {
                    Expire = jResp.expire,
                    Token = jResp.token,
                    UserID = jResp.user_id
                };

                if (saveStatus)
                {
                    StorageManager.SaveUserStatus(_status);
                }
            }

            return resp;
        }