微信开发总结之JSSDK

关键名词解释

  • 安全域名:

    用于JSSDK,开发者便可在该域名(包括二级域名)下调用微信开放的JS接口
  • access_token:

    · 普通access_token:JSSDK和微信公众号后台开发使用,获取方法见官方文档:
    http://mp.weixin.qq.com/wiki/15/54ce45d8d30b6bf6758f68d2e95bc627.html
    
    · 网页受权access_token: 网页受权获取用户基本信息(基于OAuth2.0实现),获取方法见官方文档:
    http://mp.weixin.qq.com/wiki/17/c0f37d5704f0b64713d5d2c37b468d75.html
    
    注意:若公众号已使用第三方开发,access_token不能直接从微信获取,应从第三方开发者中获取,不然会形成冲突

调试工具

  • 接口测试号:

    获取一个含有所有接口权限的测试公众号
  • 微信web开发者工具:

    获取地址:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1455784140&token=&lang=zh_CN

具体方法

  • 常规步骤:

    • 绑定安全域名html

    • 服务器端生成验证信息git

    • 客户端使用config接口注入权限验证配置github

    • 服务器生成验证信息常规步骤web

      • 获取普通access_tokenapi

      • 使用aceess_token获取jsapi_ticket安全

      • 生成签名服务器

参与签名字段:noncestr(随机字符串),jsapi_ticket,timestamp(时间戳),url(当前网页的URL,不包含#及其后面部分)微信

  • 对全部待签名参数按照字段名的ASCII 码从小到大排序(字典序)后,使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串string1koa

  • 对string1进行sha1签名,获得signature工具

注意事项:

  • 签名用的noncestr和timestamp必须与wx.config中的nonceStr和timestamp相同。

  • 签名用的url必须是调用JS接口页面的完整URL。

  • 出于安全考虑,开发者必须在服务器端实现签名的逻辑。

以上为服务器的步骤,根据以上内容实现了一个简单的koa中间件,详见https://github.com/die-welle/koa-weixin-jssdk

  • 客户端使用config接口注入权限验证配置

    待续

相关文章
相关标签/搜索