问题引入
在使用uniapp开发微信小程序时,开发者工具的模拟器可以正常请求。但是当使用真机调试时会发现,请求已发起,但是控制台一片空白。
过了一会儿就会报错,请求超时。
摸索过程
检查代码和网络连接都正常,当然也勾选了不校验合法域名。
网上搜了半天,没发现相同的问题。
手足无措之时,将手机网络切换成电脑相同的wifi,重新运行,竟然可以了。
然后又让手机连接电脑开的热点,也顺利请求。
问题原因
显然,只有手机和电脑处于局域网才能顺利请求。
然后去微信小程序开发文档找到了这么一段话:
总结一下就是,由于微信小程序限制了非局域网环境下的真机调试请求,只允许通过同一个局域网内进行网络请求。这意味着非局域网环境下只能通过域名形式的网址来调用微信小程序,而不是通过IP地址。因此,在进行真机调试时,我们需要将服务器配置成可解析外部域名的形式才能正常工作。
问题就出在请求URL上面,我使用了IP类型的URL。
然而这个服务器的IP和手机并不在局域网里面,所以请求被拦截了。
解决方法
1. 确保手机电脑位于局域网之下,只有这样才能使用IP类型的URL。文章来源:https://www.toymoban.com/news/detail-769568.html
2.如果手机电脑不在局域网之下,则请求URL只能使用域名的形式。文章来源地址https://www.toymoban.com/news/detail-769568.html
到了这里,关于微信小程序真机调试网络请求失败或超时的问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!