概述
本文属于个人原创作品、个人总结,谢绝转载、抄袭。如果您有疑问或者希望沟通交流,可以联系QQ:865562060。
一、概述
在对接微信的开发过程中,很多时候需要获取到用户的OpenID以及UnionID信息。有的接口只能获取到OpenID信息,而有的接口既可以获取到OpenID也能获取到UnionID,以下是两种接口获取信息的对比。
1、获取OpenID。下述代码中获取的userInfo中包含用户的OpenID信息,但是UnionID为空。
if (!string.IsNullOrEmpty(code))
{
OAuthToken oauthToken = JsonConvert.DeserializeObject<OAuthToken>(new WXHelper().Request(string.Format("https://api.weixin.qq.com/sns/oauth2/access_token?appid={0}&secret={1}&code={2}&grant_type=authorization_code", appId, secret, code), "", "GET"));
string accesstoken = string.Empty;
AccessToken token = JsonConvert.DeserializeObject<AccessToken>(new WXHelper().Request(string.Format("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={0}&secret={1}", appId, secret), "", "GET"));
if (token != null && !string.IsNullOrEmpty(token.access_token))
{
accesstoken = token.access_token;
}
if (oauthToken != null && !string.IsNullOrEmpty(oauthToken.openid))
{
string strResult = new WXHelper().Request(string.Format("https://api.weixin.qq.com/cgi-bin/user/info?access_token={0}&openid={1}&lang=zh_CN", accesstoken, oauthToken.openid), "", "GET");
OAuthUserInfo userInfo = JsonConvert.DeserializeObject<OAuthUserInfo>(strResult);
}
}
2、获取OpenID与UnionID。下述代码中获取的userInfo中包含用户的OpenID以及UnionID信息。
if (!string.IsNullOrEmpty(code))
{
WXHelper WXHelper = new WXHelper();
string strGetSnsToken = WXHelper.Request(string.Format("https://api.weixin.qq.com/sns/oauth2/access_token?appid={0}&secret={1}&code={2}&grant_type=authorization_code", appId, secret, code), "", "GET");
JObject jo1 = JsonConvert.DeserializeObject<JObject>(strGetSnsToken);
string strResult = WXHelper.Request(string.Format("https://api.weixin.qq.com/sns/userinfo?access_token={0}&openid={1}&lang=zh_CN ", jo1["access_token"].ToString(), jo1["openid"].ToString()), "", "GET");
OAuthUserInfo userInfo = JsonConvert.DeserializeObject<OAuthUserInfo>(strResult);
}
示例:
{
"subscribe": 1,
"openid": "o6_bmjrPTlm6_2sgVt7hMZOPfL2M",
"nickname": "Band",
"sex": 1,
"language": "zh_CN",
"city": "广州",
"province": "广东",
"country": "中国",
"headimgurl":"http://thirdwx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4eMsv84eavHiaiceqxibJxCfHe/0",
"subscribe_time": 1382694957,
"unionid": " o6_bmasdasdsad6_2sgVt7hMZOPfL"
"remark": "",
"groupid": 0,
"tagid_list":[128,2],
"subscribe_scene": "ADD_SCENE_QR_CODE",
"qr_scene": 98765,
"qr_scene_str": ""
}
最后
以上就是懵懂路灯为你收集整理的获取微信用户OpenID与UnionID接口方法的全部内容,希望文章能够帮你解决获取微信用户OpenID与UnionID接口方法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复