python+django+uwsgi+nginx 微信踩坑

来源:互联网 发布:女生都穿安全裤 知乎 编辑:程序博客网 时间:2024/06/07 11:08

直接开踩:

  1. 需要拥有一个外网域名, 如: www.test.com, 此域名应与nginx配置一致(nginx配置详见django+gunicorn+nginx新手配置), 且端口号为80.
  2. 登录微信公众平台测试号.
  3. 借口配置.
    URL: http://www.test.com/wx_test/ (此处一定要加http://, 并且访问此域名要返回相应的 echostr, 才能配置成功)
    Token: testToken (此处随便填, 但是要与后台的Token对应)
    如有还是遇到问题还请仔细阅读微信开发文档.
  4. 第二条配置在后台的代码.
    django views.py:
    def wx_test(request):    # 微信开发者平台测试接口验证    WEIXIN_TOKEN = 'testToken'    if request.method == "GET":        signature = request.GET.get("signature", None)        timestamp = request.GET.get("timestamp", None)        nonce = request.GET.get("nonce", None)        echostr = request.GET.get("echostr", None)        token = WEIXIN_TOKEN        tmp_list = [token, timestamp, nonce]        tmp_list.sort()        tmp_str = "%s%s%s" % tuple(tmp_list)        tmp_str = hashlib.sha1(tmp_str).hexdigest()        if tmp_str == signature:            return HttpResponse(echostr)        else:            return HttpResponse("weixin  index")

    django urls.py:
    url(r'^wx_test/',views.wx_test, name='wx_test'),

    至此, 测试号接口配置成功.
  5. JS接口安全域名.
    域名: www.test.com  (此处不需要http://)

  6. 测试公众号二维码, 扫码关注, 右侧微信号下方的则是openid (用来获取用户信息, 详见文档)

  7. 网页下滚, 找到 网页服务 → 网页账号 → 网页授权获取用户基本信息 → 修改 , 此处填入 www.test.com (同JS接口安全域名)

  8. 在微信公众号开发文档里下载 开发工具(仅WIN 和MAC使用), 扫码登录后, 输入 http://www.test.com/ 便可进行正常开发.