• 微信基本集成(随笔 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"}
    周永发
  • 相关阅读:
    centos7下部署nginx+supervisor+netcore2.1服务器环境
    centos6.1配置nodejs运行环境
    centos下远程访问redis端口配置
    如何成为一名合格的软件测试师
    Maven之安装及构建简单项目 掠影
    JAVA语言单元测试框架——JUnit浅析
    软件测试 之 白盒测试 掠影
    软件测试 之 黑盒测试 掠影
    以一个闰年检测程序为例的非法字符异常输入检测
    学习心得——测试框架浅析
  • 原文地址:https://www.cnblogs.com/yvanBk/p/8387707.html
Copyright © 2020-2023  润新知