/// <summary> /// 获取Bestdori的账号数据(从缓存取) /// </summary> /// <param name="QQID"></param> public BD_User BD_GetUser_FromCache(String QQID) { BD_User user = new BD_User(); string sql = "select * from BD_User where bindQQ='" + QQID + "'"; DataTable dt = SqlHelper.ExecuteDataTable(sql); //检查行数,如果为0直接返回空 if (dt.Rows.Count == 0) { return(null); } for (int i = 0; i < dt.Rows.Count; i++) { user.Username = dt.Rows[i]["username"].ToString(); user.Password = dt.Rows[i]["password"].ToString(); user.FollowingCount = int.Parse(dt.Rows[i]["followingCount"].ToString()); user.FollowedByCount = int.Parse(dt.Rows[i]["followedByCount"].ToString()); user.Nickname = dt.Rows[i]["nickname"].ToString(); user.SelfIntro = dt.Rows[i]["selfIntro"].ToString(); user.SocialMedia = dt.Rows[i]["socialMedia"].ToString(); user.FavCharacters = dt.Rows[i]["favCharacters"].ToString(); user.FavCards = dt.Rows[i]["favCards"].ToString(); user.FavBands = dt.Rows[i]["favBands"].ToString(); user.FavSongs = dt.Rows[i]["favSongs"].ToString(); user.FavCostumes = dt.Rows[i]["favCostumes"].ToString(); user.BindQQ = QQID; } return(user); }
/// <summary> /// 通过绑定的QQ号来获取BD令牌(从缓存获取) /// </summary> /// <param name="bindQQ"></param> /// <returns></returns> public BD_Token BD_GetToken_FromCache(string bindQQ) { string sql = "select a.BD_Token,b.username from BD_Token a inner join BD_User b on a.BD_Account=b.username where b.bindQQ='" + bindQQ + "'"; DataTable dt = SqlHelper.ExecuteDataTable(sql); string BD_Token = dt.Rows[0]["BD_Token"].ToString(); BD_User user = new BD_User(); user.BindQQ = bindQQ; user.Username = dt.Rows[0]["username"].ToString(); return(new BD_Token(BD_Token, user)); }
/// <summary> /// 更新信息 /// </summary> /// <param name="user"></param> /// <returns>-1密码错误,0更新成功,1为更新失败</returns> public int BD_UpdData(BD_User user) { IDictionary <string, object> parameters = new Dictionary <string, object>(); parameters.Add("username", user.Username); parameters.Add("password", user.Password); // 请求地址 string url = "https://bestdori.com/api/user/login"; // 跳转入口 string refer = "https://bestdori.com/profile/account?g=%2F"; string result = ""; HttpWebResponse response = Tools.HttpPost(url, parameters, refer); Stream stream = response.GetResponseStream(); //获取响应内容 using (StreamReader reader = new StreamReader(stream, Encoding.UTF8)) { result = reader.ReadToEnd(); } JObject BD_result = JObject.Parse(result); //判断是否登录成功 if (BD_result["result"].ToString().Equals("True")) { //BD 登录Cookie string BD_Cookie = response.Cookies["token"].Value; string sql = String.Format("update BD_Token set BD_Token='{0}' where BD_Account='{1}'", BD_Cookie, user.Username); if (SqlHelper.ExecuteNonQuery(sql) > 0) { BD_SaveUser(new BD_Token(BD_Cookie, user)); return(0); } else { return(1); } } else { //账号登录失败 return(-1); } }
/// <summary> /// 更新BD密码 /// </summary> /// <param name="user"></param> /// <returns></returns> public bool BD_UpdPassword(BD_User user) { string sql = String.Format("update BD_User set password = '******' where bindQQ='{1}'", user.Password, user.BindQQ); return(SqlHelper.ExecuteNonQuery(sql) > 0 ? true : false); }