帮助与服务

返回顶部

使用“花生壳”解决微信小程序访问难题

绝大部分微信小程序应用都需要提交、请求网络数据。例如:微信小程序点餐系统,需要向后台服务提交订单信息;微信小程序商城,需要向后台服务请求商品信息等。

实现这些数据的提交、请求,都要用到网络相关接口,主要包括:
普通 HTTPS 请求(request)、WebSocket 通信(connectSocket)和文件上传/下载(uploadFile/ downloadFile)

按照微信小程序的要求,在正式环境,每个微信小程序需要事先设置一个通讯域名,小程序可以跟指定的域名与进行网络通信。此外,服务器域名需要在小程序后台-设置-开发设置-服务器域名,中进行配置,配置时需要注意:

① 域名必须经过 ICP 备案;
② 域名只支持 HTTPS和WSS协议;
③ 域名不能使用 IP 地址或 localhost;
④ 对于每个接口,分别可以配置最多 20 个域名
⑤ 出于安全考虑,api.weixin.qq.com不能被配置为服务器域名,相关API也不能在小程序内调用。开发者应将 appsecret 保存到后台服务器中,通过服务器使用 appsecret 获取 accesstoken,并调用相关API。

对于开发环境,要求相对不是特别严格。但是,在真机测试的时候,依然需要外网访问开发计算机。必须特别注意的是,开发环境网络访问不能使用localhost。localhost指的是开发计算机,微信小程序是在手机的环境工作的,不是开发计算机。手机的微信小程序localhost是不能访问开发计算机的。
解决这个问题,就需要使用花生壳的两个技术支持:1.域名,2.端口映射

操作步骤:

1、以IIS为例,首先确保本地局域网正常访问。打开浏览器测试访问本地建立的网站是否正常,如下图所示:

2、访问https://hsk.oray.com/ ,点击右上角注册帐号;

3、点击导航栏“下载”按钮,下载安装花生壳程序;

4、安装登录花生壳程序;

5、登录成功后,点击右下角“+”,添加内网映射

① 应用名称:自定义填写;
② 映射类型:选择HTTPS;
③ 外网域名:选择已购买HTTPS配件的顶级域名;
④ 内网主机:填写IIS服务器的本地局域网IP;
⑤ 内网端口:填写IIS的HTTP端口;
最后点击保存,映射添加成功。
注意:因微信扫描机制严格不建议使用壳域名用作微信推广,为防止受到影响,请使用顶级域名

6、可以看到生成的外网访问地址:https://域名

7、通过生成的外网访问地址,即可在外网访问了,网络环境准备完毕。

8、我们定义一个test.txt文件充当服务端相应数据。将这个文件部署到网站。使用浏览器访问,可以看到test.txt。这表示IIS和花生壳工作正常。

9、打开微信小程序。
注意:微信小程序要求使用https,但是,现在是开发阶段,我们可以选择“不校验合法域名、web-view(业务域名)、TLS 版本以及 HTTPS 证书”。
微信小程序有部分接口明确要求必须使用https的443端口,利用花生壳可以方便的解决这个问题。
现在可以编写微信小程序。

(1)wxml文件

(2)js文件

(3)执行效果

10、真机测试,点击“预览”

11、扫面二维码,在手机看到访问效果。

总结语
微信小程序开发环境的网络访问的难题是,在真机测试的时候,需要外网访问开发计算机。花生壳解决的是外网访问问题,利用花生壳提供的域名实现外网访问,实现真机测试访问开发计算机的需求。

有帮助 (0)
无帮助

钻石VIP

无需等待,尊享服务
IT专家24小时在线远程

马上了解