一、问题

众所周知,微信公众号开发需要公网的有效域名和80端口,本机当然互联网是访问不了的。那么我们难道去一个公网的服务器去开发吗?那样是不是太土了。

答案当然是,NO

当然我们在做微信支付的时候,有些URL需要域名进行备案了,那么我们首先需要准备一个域名,并且通过的备案,我这里是阿里的一个域名smartbi.club

已经个人备案成功,ICP可查

二、解决问题

2.1、准备条件

硬件:笔记本

软件:Tomcat+NATAPP软件https://natapp.cn+通过备案的域名

注册一个natapp账号

2.2、在natapp购买一个隧道

登录natapp账号,购买一个VIP_1的隧道,因为只有付费的隧道才支持自定义域名,那么我就选一个最便宜的

2.3、选择自主域名,添加已备案域名

如下图,填写我们的域名,如我的smartbi.club,系统会调用工信部接口进行验证,如下图,我的是通过的

2.4、修改隧道配置,绑定自主域名

如下图,进入natapp,点击我的隧道,选择VIP_1隧道,点击配置

进入设置,如下图把我们的自主域名smartbi.club绑定到隧道中,注意必须是我们已经授权的域名

2.5、将要绑定的域名CNAME 解析 到 s1.natapp.cc

这一步需要到我们的域名服务商哪里,比如我的域名是阿里云的就去阿里云的域名控制台操作,如下图,千万要

记得操作这一步

CNAME成功的话,ping域名会跳转到s1.natapp.cc,如下图所示

2.6、启动服务进行测试

首先启动Tomcat服务,用80端口启动,确保localhost访问到Tomcat,如下图

其次进入 natapp的解压目录C:\Users\king\Desktop\natapp_windows_amd64_2_3_8,运行natapp.exe,如下图,我们需要CMD在natapp的根目录执行命令natapp -authtoken=authtoken的值  , authtoken的值在natapp账户中我们买的隧道中查看

点击回车,隧道服务启动成功,可以看到是根据我们的自主域名启动的隧道

访问测试,这个时候访问http://smartbi.club我们发现,可以访问到我们自己笔记本的Tomcat了,说明开启隧道成功,如下图所示,这里为了区分我把Tomcat默认主页的HOME改为了King Local Home

2.7、测试一下微信支付中的认证

如下图,可以看到微信支付中的认证成功,接下来就可以在本机开发和调试微信支付相关接口了

需要注意的是,我们运行隧道服务的窗口不能关闭,具体可以去官网natapp.cn查看开机启动natapp的相关操作,或者是让cmd在后台运行,

避免误操作关闭。如果是窗口化运行隧道服务,窗口关闭则隧道服务关闭,如下图,我们访问域名的时候,这里可以监听到访问请求

利用NATAPP隧道解决微信公众号开发之本地调试难题的更多相关文章

  1. 微信公众号开发 VS2015本地调试

    1.部署一个微信公众号服务在本地IIS: 2.下载一个ngrok 穿网工具,放到部署文件夹根目录: ngrok穿网 在部署路径下打开cmd,输入 ngrok http [端口号] 4.将映射的URL ...

  2. .NET C#微信公众号开发远程断点调试(本地远程调试生产环境代码)

    最近在做微信公众号开发,由于之前没有接触过,突然发现调试不方便,不方便进行断点跟踪调试.因为微信那边绑定的服务器地址必须是公网地址,但是还是想进行断点调试(毕竟这样太方便了,程序有Bug,一步步断点跟 ...

  3. 微信公众号开发系统入门教程(公众号注册、开发环境搭建、access_token管理、Demo实现、natapp外网穿透)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/a1786223749/article/ ...

  4. 微信公众号开发之内网映射外网natapp安装(一)

    一,为什么使用natapp 1,在进行微信公众号开发时,我们需要搭建网站,并且随时都有可能修改网站内容进行调试.如果能够将内网ip映射到外网上,将大大方便我们的调试.每次发布只需eclipse运行应用 ...

  5. 利用OpenShift托管Node.js Web服务进行微信公众号开发

    最近写了一个微信的翻译机器人.用户只要关注该公众号,发送英文的消息,就能收到中文翻译的回复.有兴趣的读者可以扫描下面的二维码关注该公众号,尝试发送英文单词试试看.(有时候第一次发送单词会收到“该公众号 ...

  6. 微信公众号开发C#系列-2、微信公众平台接入指南

    概述 微信公众平台消息接口的工作原理大概可以这样理解:从用户端到公众号端一个流程是这样的,用户发送消息到微信服务器,微信服务器将接收到的消息post到用户接入时填写的url中,在url处理程序中,首先 ...

  7. 线程安全使用(四) [.NET] 简单接入微信公众号开发:实现自动回复 [C#]C#中字符串的操作 自行实现比dotcore/dotnet更方便更高性能的对象二进制序列化 自已动手做高性能消息队列 自行实现高性能MVC WebAPI 面试题随笔 字符串反转

    线程安全使用(四)   这是时隔多年第四篇,主要是因为身在东软受内网限制,好多文章就只好发到东软内部网站,懒的发到外面,现在一点点把在东软写的文章给转移出来. 这里主要讲解下CancellationT ...

  8. 微信公众号开发系列-13、基于RDIFramework.NET框架整合微信开发应用效果展示

    1.前言 通过前面一系列文章的学习,我们对微信公众号开发已经有了一个比较深入和全面的了解. 微信公众号开发为企业解决那些问题呢? 我们经常看到微信公众号定制开发.微信公众平台定制开发,都不知道这些能给 ...

  9. NET微信公众号开发-5.0微信支付(待测试)

    开发前准备. 1.0微信支付官方开发者文档 2.0官方demo下载 我们用c#所以选择.net版本 不过这个官方的demo根本跑步起来 3.0官方demo运行起来解决方案 4.0微信支付官方.net版 ...

随机推荐

  1. Tesseract OCR简单实用介绍

    做字符识别,不能不了解google的Tesseract-OCR,但是如何在自己的工程中使用其API倒是语焉不详,官网上倒是很详尽地也很啰嗦地介绍如何重新编译生成适合自己平台的lib和dll,经过近些天 ...

  2. IntraWeb XIV 类型速查表

    tkClass ================== IWUserSessionBase.TIWUserSessionBase < TDataModule < TComponent < ...

  3. 群晖NAS的Docker容器使用中国镜像加速

    vi /var/packages/Docker/etc/dockerd.json 添加如下内容: { "registry-mirrors": ["https://regi ...

  4. C#实现路由器断开连接,更改公网ip

    publicstaticvoid Disconnect() { string url ="断 线";    string uri ="http://192.168.1.1 ...

  5. SATA工作模式咋选?揭秘AHCI和IDE区别(全文)

    第1页:AHCI模式与Win7.SSD的不解之缘     AHCI这个注定和SATA接口结下不解之缘的接口模式,它担负着淘汰IDE模式的重任,从诞生开始就充满争议,它经历了整整7年时间.它伴随着SSD ...

  6. hdu 4865 Peter&#39;s Hobby

    Peter's Hobby Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) To ...

  7. poi workbook转成流

    try { ByteArrayOutputStream bos = new ByteArrayOutputStream(); workbook.write(bos); byte[] barray = ...

  8. C#判断字符串的是否是汉字

    //第一种方法:正则表达式 private bool IsChinese(string Text) { ; i < Text.Length; i++) { if (Regex.IsMatch(T ...

  9. 【python】python编码方式,chardet编码识别库

    环境: python3.6 需求: 针对于打开一个文件,可以读取到文本的编码方式,根据默认的文件编码方式来获取文件,就不会出现乱码. 针对这种需求,python中有这个方式可以很好的解决: 解决策略: ...

  10. windows7文件共享 详细步骤 图解

    windows7文件共享详细步骤图解 http://wenku.baidu.com/link?url=PROjBfZ0KZFiAlgpb6sdaZBnSzFNTx3Ui_YXs5-IVoKBf2pPN ...