来工作快两个月了,成长当然还是有的,但有很多做的不好的,很多东西可能没有深入理解,只能做一些简单功能,然后有时候可能效率比较低,脑袋比较喜欢乱想。
往后每天就记录下自己在工作和学习上的事情吧 当然现在的目标还是定位要在能把所有功能实现的阶段,性能这方面等以后或者师傅来解决和提点以及自己成长一段时间了。
新项目,要我做个人中心 然后在了解微信和qq的第三方登录 目前做了微信的一些不完全实现 只做了三步
通过链接调到登录页面
然后登录成功回调页面获得code
string url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=" + appid + "&redirect_uri=" + redirect_uri + "&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect";
然后再通过code获得access_token
string access_token = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=" + appid + "&secret=" + AppSecret + "&code=" + code + "&grant_type=authorization_code";
最后access_token获取个人信息
string Getdate = "https://api.weixin.qq.com/sns/userinfo?access_token=" + tokenDate.access_token + "&openid=" + tokenDate.openid + "&lang=zh_CN";
HttpClient client = new HttpClient();
string json = client.GetStringAsync(access_token).Result;
获得的数据最后当然也是要反序列化的 旁边的小师傅建议建立一个实体对应返回的数据格式 然后直接读取 如下
string getJson = client.GetStringAsync(Getdate).Result;
Backdata da = JsonConvert.DeserializeObject<Backdata>(getJson);
Backdata实体为
public class Backdata
{
/// <summary>
/// 用户昵称
/// </summary>
string nickname { get; set; }
/// <summary>
/// 普通用户性别,1为男性,2为女性
/// </summary>
int sex { get; set; }
/// <summary>
/// 省份
/// </summary>
string province { get; set; }
/// <summary>
/// 用户头像
/// </summary>
string headimgurl { get; set; }
/// <summary>
/// 城市
/// </summary>
string city { get; set; }
/// <summary>
/// 国家
/// </summary>
string country { get; set; }
/// <summary>
/// 统一标识
/// </summary>
int unionid { get; set; }
}
然后通过下面反序列化也是可以的
JObject jo = (JObject)JsonConvert.DeserializeObject(reader.ReadToEnd());
string zo = jo["data"]["forecast"].ToString();