目录

微信小程序http127.0.0.1-不在以下-request-合法域名列表中解决方案

微信小程序——[http://127.0.0.1 不在以下 request 合法域名列表中]解决方案

问题描述

https://i-blog.csdnimg.cn/blog_migrate/4bd39b9717d229d58818e61ae6747bca.png

问题分析

每个微信小程序需要事先设置通讯域名,小程序 只可以跟指定的域名进行网络通信 。包括普通 HTTPS 请求( )、上传文件( )、下载文件( ) 和 WebSocket 通信( )。

允许与局域网 IP 通信,但要注意 不允许与本机 IP 通信

小程序必须使用 HTTPS/WSS 发起网络请求 。请求时系统会对服务器域名使用的 HTTPS 证书进行校验,如果校验失败,则请求不能成功发起。

官方文档

解决方案

开发

跳过域名校验

在微信开发者工具中,可以临时开启 开发环境不校验请求域名、TLS版本及HTTPS证书 选项,跳过服务器域名的校验。此时,在微信开发者工具中及手机开启调试模式时,不会进行服务器域名的校验。

在服务器域名配置成功后,建议开发者关闭此选项进行开发,并在各平台下进行测试,以确认服务器域名配置正确。

https://i-blog.csdnimg.cn/blog_migrate/75e27a0cf539c2e8c1c348c0cbc47133.png

发布

「小程序后台-开发-开发设置-服务器域名」 中配置服务器域名

https://i-blog.csdnimg.cn/blog_migrate/119d294dc91395a32845b969fcb0d68e.png

配置流程

服务器域名请在 「小程序后台-开发-开发设置-服务器域名」 中进行配置,配置时需要注意:

  • 域名只支持 https ( 、 、 ) 和 wss ( ) 协议;
  • 域名不能使用 IP 地址(小程序的 IP 除外)或 localhost;
  • 可以配置端口,如 ,但是配置后只能向 发起请求。如果向 、https://myserver.com:9091 等 URL 请求则会失败。
  • 如果不配置端口。如 ,那么请求的 URL 中也不能包含端口,甚至是默认的 443 端口也不可以。如果向 请求则会失败。
  • 域名必须经过 ICP 备案;
  • 出于安全考虑, api.weixin.qq.com 不能被配置为服务器域名,相关API也不能在小程序内调用。 开发者应将 AppSecret 保存到后台服务器中,通过服务器使用 getAccessToken 接口获取 access_token ,并调用相关 API;
  • 对于每个接口,分别可以配置最多 20 个域名。
  • 每个月只能修改五次服务器域名配置

参考文章