Visual studio 配合 ngrok ,在本地调试微信

1, 打开IIS Express 的配置文件:
C:\Users\gruan\Documents\IISExpress\config\applicationhost.config
 
2, 对要添加外部访问的网站作修改:
1             <site name="XXY.WX" id="54"> 
2                 <application path="/" applicationPool="Clr4IntegratedAppPool"> 
3                     <virtualDirectory path="/" physicalPath="D:\NET\XXY.WX\XXY.WX" /> 
4                 </application> 
5                 <bindings> 
6                     <binding protocol="http" bindingInformation="*:43362:localhost" /> 
7                     <binding protocol="http" bindingInformation="*:43362:127.0.0.1" /> 
8                 </bindings> 
9             </site> 

 

红色这一句是新加的, 我的目的是能通过 127.0.0.1:43362 也能访问。
 
但是启动 VS 的调试 (非管理员运行), 看IIS Express 并没有 127.0.0.1 这个地址:
Visual studio 配合 ngrok ,在本地调试微信_第1张图片
 
手动在浏览器地址栏里输入 http://127.0.0.1:43362 , 返回的是 400 错误。
 
这时需要如下操作:
3,以管理员运行 CMD
4,netsh http add urlacl url=http://127.0.0.1:43362/ user=everyone
 
运行调试,即可以看到:
Visual studio 配合 ngrok ,在本地调试微信_第2张图片
 
在浏览器里输入 127.0.0.1:43362 即可正常访问。
 
 
 
----------------------------------------------------------
上面费蛋劲去加那个 127.0.0.1 ,是因为我要调试微信。
一开始想用花生壳,映射本地地址到公网上,搞了半天, 输了身份证,手机号,也没有弄成功,想买他们的服务,只有支付表的, 好像我还没有用过支付表。
费了半天劲,也没有弄成,把花生壳给删了,给删了啊!为啥只有支附表的。
 
还好,找到 NGROK 这个神器。
下载,映射,成功。
NND 就是访问不了!
原因吗, 是被墙了
 
还好,有好心人在国内搭了一套NGROK 服务, 除加个配置外,其它基本不变。
 
在 NGROK.exe 的目录下, 新增本文件: cfg, 内容是下面两行:
 
server_addr: "tunnel.mobi:44433" 
trust_host_root_certs: true
 
在 CMD 里运行:
ngrok.exe -config cfg -subdomain xxxxx 43362
 
这个 xxxxx 即映射后的二级域名, 43362 即本地端口号
 
成功后是这个样子:
Visual studio 配合 ngrok ,在本地调试微信_第3张图片
 
访问这个 xxxx.tunnel.mobi 就可以访问本地的WEB应用程序了。
这里是将 xxxxx.tunnel.mobi 映射到 127.0.0.1:43362 上,如果不在 IIS Express 里加 127.0.0.1 的配置, 是无法访问的,虽然 localhost 就是 127.0.0.1, 但是就是返回 400.
 
OK, 在VS里加个断点,用手机访问一下这个地址,断点正常
----------------------------------------------------------------
标题党了一把,说了半天和微信开发半毛钱关系没有啊。
因为微信要求 80 端口,非独立IP咋可能有 80 端口给你使用?
 

你可能感兴趣的:(IO)