微信公共号网页开发开发环境获取微信授权

98 阅读1分钟

在做微信公众号网页开发时, 获取微信授权是个老大难的问题

由于微信需要校验线上域名

具体请看开发文档 而我们在开发过程中使用的都是本地服务, 这时候你是没法进行授权的

大多数时候, 很多人都是这一块的功能在本地开发时后忽略掉, 不验证, 对照文档开发完后直接丢测试环境去验证, 调试 其实, 这个是有办法解决的

分析一下问题

  1. 微信授权必须是域名
  2. 微信会取域名下授权文件进行验证
  3. 开发者本地电脑是ip而非域名 ####所以有以下解决问题的思路
  4. 一个外网域名用于授权
  5. 需要访问该域名时能实际打开对应开发者ip上的的服务

解决方案如下

  1. 授权域名用测试环境域名
  2. 测试环境有nginx, 而nginx可以转发, 代理
  3. 测试环境服务器需要连接本地局域网

细化一下得到具体操作方案

假如你测试环境域名叫https://www.test.com;

在ngixn服务上增加如下配置location /zhangsan88 {proxy_pass https://192.168.8.8:8088;};

意思就是 当用户访问 https://www.test.com/zhangsan88这个地址时,

nginx会把该请求转发到 https://192.168.8.8:8088这个地址上;

所以你在你的浏览器访问https://www.test.com/zhangsan88其实是在访问https://192.168.8.8:8088;

那么只要https://www.test.com 可以外网访问, 那么它就可以完成微信授权,

那么每个局域网内的ip就都可以完成完整的微信授权;