微信公众号开发遇到问题

  1. 问题描述:hashcode 为定值(我这边是da39a3ee5e6b4b0d3255bfef95601890afd80709),因为hashcode是由token, timestamp, nonce三个变量决定的,所以由常识知道问题出在算法上,解决方法:1.算hash的时候,需要加上encode方法 ,表明用utf-8,2. 字符串合并用.join

    list = [token,timestamp,nonce]
    list.sort()
    list2 = ''.join(list)
    sha1 = hashlib.sha1()
    sha1.update(list2.encode('utf-8'))
    hashcode = sha1.hexdigest()
    
    作者:胡思
    链接:https://www.jianshu.com/p/2df7a5128513
    來源:简书
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
  2. 我使用的是web.py网络框架,微信在线测试平台:https://mp.weixin.qq.com/debug/的“返回结果”可以打印出报错问题,而后台程序却不会
  3. 因为公众号是个人账号,无法被认证,所以不能提供公众号的主动提醒服务;目前可以通过发送“tickets 日期 出发车站 到达车站”格式的消息(比如:”tickets 2018-01-02 北京 天津”)来查询火车票,欢迎使用并提出意见,公众号id: MyMasterpieces
  4. 待续,,,
### 通过 UnionID 获取微信公众号用户信息 为了利用 UnionID 来获取微信公众号中的用户信息,开发者需遵循特定流程来实现这一目标。UnionID 是指当同一开放平台账号下的不同应用被同一个微信用户关注或绑定时,这些应用间可以获取到该用户的统一标识符——即 UnionID。 #### 准备工作 确保已获得用户的同意并通过 OAuth2.0 授权码模式获得了 `code` 参数以及对应的 OpenID 和 Access Token。对于已经绑定了相同开放平台账户的应用程序来说,在获取到了某个用户的 OpenID 后还可以进一步得到其 UnionID[^2]。 #### 正确构建 API 请求 URL 一旦拥有了必要的参数(如 AppID, Secret, Code),就可以向微信服务器发送请求以换取 access_token: ```http GET https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code ``` 接着使用返回的结果中的 openid 或者 unionid 构建如下形式的信息查询URL: ```http GET https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN ``` 如果要基于 UnionID 查询,则替换其中的 OPENID 字段为 UNIONID 即可[^1]。 需要注意的是,并不是所有的场景下都能直接拿到 UnionID;只有在同一开放平台内的多个应用之间共享数据时才会涉及到此字段。因此,在设计应用程序逻辑前应当确认当前环境是否满足条件[^3]。 另外值得注意的一点是在本地环境中调试可能会遇到一些权限上的限制,建议按照官方指南完成相应的配置调整以便顺利进行开发测试工作[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值