本地调试微信接口(内网穿透到外网) |
您所在的位置:网站首页 › 微信支付无法连接服务器是怎么了 › 本地调试微信接口(内网穿透到外网) |
原文链接:http://blog.csdn.net/xyang81/article/details/52141881 在做微信开发的时候,调用微信接口成功之后,微信会回调我们事先配置好的一个接口。由于微信的服务是在外网的,所以这个回调接口也只能是外网,而且微信要求回调接口只能是通过ICP备案的域名,不能使用IP。所以在开发调试的时候,需要把代码部署到线上的服务器,通过打log来跟踪接口调用情况,很明显这样开发效率非常低。下面介绍两款工具(natapp和sunny-ngrok)来解决这个问题,将本机的IP和端口映射到外网指定的域名下,通过访问映射的外网域名就可以直接访问到本机的服务。 1、natapp(免费/收费模式) 1> 首先在官网下载natapp客户端
打开终端,在命令行中直接运行./natapp即可。运行成功后会进入如下界面: 访问http://127.0.0.1:4040可以监控请求路径、请求头和响应头等日志信息。 通过以上的操作,就完成了外网访问本机服务的工作。 3> 指定映射端口natapp默认只能映射本机的80端口,如果要映射到指定端口,你需要在natapp官网注册一个帐号,并购买一个免费或收费的隧道,来配置映射到指定的端口上。操作流程如下图所示: 将本地端口修改成你需要映射的端口号,点击免费购买后回到我的隧道列表中,复制authtoken列对应的值。 运行:./natapp -authtoken=xxxxxx即可在控制台看到刚刚配置的自定义端口和域名的映射信息。如下图所示:
但是免费的隧道有几点限制: 1> 域名是natapp随机生成的 2> 每个协议只能购买一个隧道,即每个协议只能映射一个端口 3> 只能映射一条隧道(一个转发域名)(sunny-ngrok可以映射多条隧道) 但也已经够用了,不是吗? 说了这么多,你应该知道怎么调试微信接口了吧? 只需要将natapp随机生成的域名,配置到微信的回调参数配置中即可。因为ngrok.natapp.cn域名是通过了ICP备案的,所以natapp随机生成的三级域名在微信当中都是可以通过验证的。 2、sunny-ngrok(完全免费模式)sunny-ngrok配置稍微麻烦一点,需要有自己的域名。 1> 在sunny-ngrok注册一个帐号 2> 添加隧道登录个人中心,新增一条隧道 需要将自定义的域名在域名管理服务商,将自定义域名用CNAME类型解析到server.ngrok.cc,才能提供服务。 4> 发布内网服务到外网从隧道列表中,拷贝刚刚创建的客户端ID,执行:./sunny clientid 客户端ID1,客户端ID2,多个客户端ID用逗号分隔。效果如下图所示: 访问http://weixin.digi-zones.com效果,和natapp访问的效果一致。如下图所示: 1> 完全免费 2> 可以定义多条隧道 3> 可以完全自定义域名 4> 需要自己申请域名并备案(算是一个缺点吧) natapp:1> 基本免费,高级功能收费(如自定义域名) 2> 免费版每个协议只能申请一条隧道 3> 域名随机生成,不能完全自定义域名。收费版也只能修改域名的前缀 4> 不需要单独申请域名(优点) 5> 运行简单,下载执行程序直接运行即可,默认监听80端口。如果要监听其它端口,没有注册帐号的前提下,需要用web服务器做反向代理 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |