微信基本集成(随笔 1)

首先,吐槽微信接口文档瞎几把乱,我呸。

1.微信对接的前提工具,准备花生壳工具,实名认证,把内网和花生壳的域名做映射,就是说内网穿透.

2.获取微信调用其他接口的凭证access_token(get请求)

 服务号APPID

 服务号的密钥secret

https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
成功返回{"access_token":"ACCESS_TOKEN","expires_in":7200}JSON字符串
access_token:凭证
expires_in:时间

3.微信的页面授权

3.1 首先到微信的权限接口中配置微信网页授权获取用户的基本信息,填写域名如(www.baidu.com)默认映射的端口是80
3.2 获取微信的CODE
  接口:https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect
在调用回调时redirect_uri域名加方法名路径
  在调用回调时回CODE,获取CODE
scope:应用授权作用域,snsapi_base (不弹出授权页面,直接跳转,只能获取用户openid),snsapi_userinfo (弹出授权页面)


3.3 获取网页授权access_token(该access_token和调用其他接口的凭证access_toekn不一样)
 CODE : 3.2调用的接口返回的CODE
 接口 :https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code
调用成功,返回字符串{ "access_token":"ACCESS_TOKEN",
          "expires_in":7200,
          "refresh_token":"REFRESH_TOKEN",
          "openid":"OPENID",
          "scope":"SCOPE" }
  
3.4获取用户的信息
 access_toke:3.3接口返回的 access_token,openid
 https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN
返回用户的信息:
openid 用户的唯一标识
nickname 用户昵称
sex 用户的性别,值为1时是男性,值为2时是女性,值为0时是未知
province 用户个人资料填写的省份
city 普通用户个人资料填写的城市
country 国家,如中国为CN
headimgurl 用户头像,最后一个数值代表正方形头像大小(有0、46、64、96、132数值可选,0代表640*640正方形头像),用户没有头像时该项为空。若用户更换头像,原有头像URL将失效。
privilege 用户特权信息,json 数组,如微信沃卡用户为(chinaunicom)
unionid 只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段。

3.5检验授权凭证(access_token)是否有效
接口:https://api.weixin.qq.com/sns/auth?access_token=ACCESS_TOKEN&openid=OPENID


access_token 网页授权接口调用凭证,注意:此access_token与基础支持的access_token不同
openid 用户的唯一标识
正确的JSON返回结果:{ "errcode":0,"errmsg":"ok"}
posted @ 2018-01-30 22:39  周永发  阅读(229)  评论(0编辑  收藏  举报