• 微信公众号开发之获取微信用户的openID


    (注:openID同一用户同一应用唯一,UnionID同一用户不同应用唯一。不同应用指微信开放平台下的不同用户。)

    1、  申请测试号(获得appID、appsecret)

    2、  填写服务器配置并验证。

    服务端编写接口,参数为(signature,timestamp,nonce,echostr),并原样返回echostr

        

             验证之后,可开通更多公众平台接口功能。

    3、  网页授权获取用户基本信息。

    3.1、在接口权限表配置授权页面回调域名或ip

       

    3.2、服务端编写接口,该接口为回调页面的[redirect_uri],即确认授权之后页面将跳转至 [redirect_uri]?code=CODE&state=STATE。服务端接收参数CODE值。

    3.3、微信用户访问下面链接,授权。

    https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=[redirect_uri]&response_type=code&scope=SCOPE&state=123#wechat_redirect

    (scope=snsapi_base,默认授权,直接跳转;scope= snsapi_userinfo,授权再跳转)

     

    3.3、获取code后,请求以下链接,即可返回openID等数据(如下图)。

    https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code

     

    (3、方法二:接收事件推送(事件:关注、取关、扫码、报位置、自定义菜单事件),这些事件触发的时候,会把一个xml数据包(如下图)发送到步骤2配的URL上,在服务端解析即可。

    我的代码中用到dom4j解析xml。事件推送以及Token验证共用那个URL。

     

     

     

    其中FromUserName即为openID。)

    4、获得openID

  • 相关阅读:
    ELK Packetbeat 部署指南
    ELK beats平台介绍
    ELK Packetbeat 部署指南(15th)
    什么是staging server
    elasticsearch学习一、安装和配置
    How To Use Logstash and Kibana To Centralize Logs On CentOS 6
    Java字节码(.class文件)格式详解(一)
    JVM之字节码——Class文件格式
    如何获得JVM执行过程中调用的方法名
    ELK beats通用配置说明(12th)
  • 原文地址:https://www.cnblogs.com/zhangzongjian/p/4895843.html
Copyright © 2020-2023  润新知