最近在开发微信小程序时,遇到 打开调试模式可以发出请求,关闭调试模式无法发出请求的情况。
解决方案:需要在小程序后台配置服务器域名
路径:「小程序后台-开发-开发设置-服务器域名」 中进行配置,配置时需要注意:
由于域名只支持https,所以需要给域名配置SSL证书。在服务器nginx中配置证书https://www.cnblogs.com/wang-yaz/p/14714072.html
- 域名只支持
https
(wx.request、wx.uploadFile、wx.downloadFile) 和wss
(wx.connectSocket) 协议; - 域名不能使用 IP 地址(小程序的局域网 IP 除外)或 localhost;
- 可以配置端口,如 https://myserver.com:8080,但是配置后只能向 https://myserver.com:8080 发起请求。如果向 https://myserver.com、https://myserver.com:9091 等 URL 请求则会失败。
- 如果不配置端口。如 https://myserver.com,那么请求的 URL 中也不能包含端口,甚至是默认的 443 端口也不可以。如果向 https://myserver.com:443 请求则会失败。
- 域名必须经过 ICP 备案;
- 出于安全考虑,
api.weixin.qq.com
不能被配置为服务器域名,相关API也不能在小程序内调用。 开发者应将 AppSecret 保存到后台服务器中,通过服务器使用getAccessToken
接口获取access_token
,并调用相关 API; - 不支持配置父域名,使用子域名。
微信官网文档:https://developers.weixin.qq.com/miniprogram/dev/framework/ability/network.html