免费简单好用的内网穿透工具(ngrok、natapp),微信回调地址配置


  • 1、登录注册账号、下载软件

  • 2、使用

    • 2-1、购买隧道、查看token

    • 2-2、端口穿透

  • 1、登录注册账号、下载软件

  • 2、使用

    • 2-1、获取并设置 token

    • 2-2、使用

  • 3、隧道

  • 1、注册测试公众号

  • 2、回调代码

  • 3、回调配置


在一些特殊的场景下,需要把我们的内网暴露出去,比如写了一个接口或网站想让别人看到,或者进行第三方开发调试的时候需要一个外网可用的回调地址。


来对比一下ngrok和natapp免费功能的优劣


限制 http/https 域名 支持程度 操作 访问
ngrok 加了一个中间页,需要设置特殊的请求头 都支持 可以使用隧道固定域名 微信对其有限制,有时候不生效 简单 没有梯子会很慢
natapp 只有http 每次开启不一样的域名 挺好 简单 正常


如果第三方不支持ngrok的时候可以使用natapp来替代,不然ngrok可以固定域名还是挺方便的


Natapp


1、登录注册账号、下载软件

  1. https://natapp.cn/
免费简单好用的内网穿透工具(ngrok、natapp),微信回调地址配置
在这里插入图片描述


下载下来的 natapp可能没有权限,只需要给它赋予权限就好了

 chmod 777 natapp


2、使用


2-1、购买隧道、查看token


免费简单好用的内网穿透工具(ngrok、natapp),微信回调地址配置免费简单好用的内网穿透工具(ngrok、natapp),微信回调地址配置


2-2、端口穿透


# XXXXXXX 替换成你的token即可
./natapp -authtoken=XXXXXXX
免费简单好用的内网穿透工具(ngrok、natapp),微信回调地址配置
在这里插入图片描述


Ngrok


1、登录注册账号、下载软件


  1. https://dashboard.ngrok.com/login
  2. https://ngrok.com/download


2、使用


2-1、获取并设置 token


免费简单好用的内网穿透工具(ngrok、natapp),微信回调地址配置
在这里插入图片描述

可以执行Command Line,把token进行设置, ngrok就是上一步下载的可执行文件


2-2、使用


假如我们要暴露 9999端口,就执行下面命令

./ngrok http 9999
免费简单好用的内网穿透工具(ngrok、natapp),微信回调地址配置
在这里插入图片描述


复制生成的随机域名到浏览器,会看到如下页面

免费简单好用的内网穿透工具(ngrok、natapp),微信回调地址配置
在这里插入图片描述


很早之前不会有这样一个中间页,如果只是临时访问,点一下 【Visit Site】也就可以了,但如果前后端对接或者第三方回调,就难办了。


官方提供三个解决办法

  1. 点一下 【Visit Site】
  2. 访问的时候加一个特殊的请求头 【ngrok-skip-browser-warning】
  3. 充值


3、隧道


使用隧道的好处就是可以固定域名

免费简单好用的内网穿透工具(ngrok、natapp),微信回调地址配置
在这里插入图片描述
免费简单好用的内网穿透工具(ngrok、natapp),微信回调地址配置
在这里插入图片描述
免费简单好用的内网穿透工具(ngrok、natapp),微信回调地址配置
在这里插入图片描述
免费简单好用的内网穿透工具(ngrok、natapp),微信回调地址配置
在这里插入图片描述


微信回调配置


1、注册测试公众号


只需要扫码登录就行

https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index


2、回调代码

@GetMapping("/callback")
public String entryCallbackSign(@RequestParam(name = "signature", required = false) String signature,
                                @RequestParam(name = "timestamp", required = false) String timestamp,
                                @RequestParam(name = "nonce", required = false) String nonce,
                                @RequestParam(name = "openid", required = false) String openid,
                                @RequestParam(name = "encrypt_type", required = false) String encType,
                                @RequestParam(name = "msg_signature", required = false) String msgSignature,
                                @RequestParam(name = "echostr", required = false) String echostr) 
{

    log.info("微信回调 GET");
    log.debug("signature: {}", signature);
    log.debug("timestamp: {}", timestamp);
    log.debug("nonce: {}", nonce);
    log.debug("openid: {}", openid);
    log.debug("encType: {}", encType);
    log.debug("msgSignature: {}", msgSignature);
    log.debug("echostr: {}", echostr);

    return echostr;
}

@PostMapping(value = "/callback", produces = "application/xml; charset=UTF-8")
public String entryCallback(@RequestBody(required = false) String requestBody,
                            @RequestParam(name = "signature", required = false) String signature,
                            @RequestParam(name = "timestamp", required = false) String timestamp,
                            @RequestParam(name = "nonce", required = false) String nonce,
                            @RequestParam(name = "openid", required = false) String openid,
                            @RequestParam(name = "encrypt_type", required = false) String encType,
                            @RequestParam(name = "msg_signature", required = false) String msgSignature) 
{
    log.info("微信回调 POST");
    log.debug("signature: {}", signature);
    log.debug("timestamp: {}", timestamp);
    log.debug("nonce: {}", nonce);
    log.debug("openid: {}", openid);
    log.debug("encType: {}", encType);
    log.debug("requestBody : " + requestBody);
    log.debug("msgSignature: {}", msgSignature);


    return "";
}


3、回调配置


免费简单好用的内网穿透工具(ngrok、natapp),微信回调地址配置
在这里插入图片描述


注:网页回调地址这里不需要http开头免费简单好用的内网穿透工具(ngrok、natapp),微信回调地址配置


原文始发于微信公众号(小道仙97):免费简单好用的内网穿透工具(ngrok、natapp),微信回调地址配置

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之家整理,本文链接:https://www.bmabk.com/index.php/post/286455.html

(0)
李, 若俞的头像李, 若俞

相关推荐

发表回复

登录后才能评论
极客之家——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!