1 模拟器上调用接口显示“request不在合法域名内”
1.1 问题描述
如图1所示,会提示https://test-miniprogram.com不在request合法域名列表中。
出现该问题的主要原因在于微信出于安全性的考虑,要求微信小程序中所有用到的网络请求域名都必须是配置在微信公众平台的request合法域名中的,且必须是https协议的。
1.2 解决方案
1.2.1 如果只是用于开发,不涉及到发布上线,则可以在微信开发者工具中详情中勾选“不校验合法域名、web-view(业务域名)、TLS 版本以及 HTTPS 证书”,如图2所示。
1.2.2 如果需要发布上线,则需要登录微信公众平台,在设置->安全设置->服务器域名->request合法域名中将需要用到的域名添加进去,如图3所示。但如果微信小程序在开发时域名还未具有https协议,则无法使用该方法,需要在产品上线前申请并配置好。
2 开发者工具中可以调用接口,而手机预览不行
2.1 问题描述
出现该问题的原因是开发者工具中勾选了“不校验合法域名、web-view(业务域名)、TLS 版本以及 HTTPS 证书”,但是手机上没有这个选项进行配置。
2.2 解决方法
2.2.1 在开发过程中可以点击手机右上角的三个点中打开调试功能,相当于开发者工具中勾选了不校验,重新进入小程序即可,如图4所示。
2.2.2 如果需要发布上线,参照1.2.2的解决方法进行合法域名配置即可。