小程序真机调试后端接口拿不到referer

在微信小程序中: 网络请求的 referer 是不可以设置的,格式固定为:
https://servicewechat.com/{appid}/{version}/page-frame.html,其中 {appid}
是你当前小程序的 appid{version} 为小程序的版本号,版本号为 0 表示为开发版,版本号为 devtools 表示从开发工具里发出的请求。

即:微信小程序有自带的 Referer, 且不可修改

开发工具上,接口请求的Request Headers那块有Referer,后端也收到了Referer

真机测试时,真机调试的工具面板里有Referer,但是后端还是没接收到,接口报HTTP_REFERER为空

原因是:
小程序开发者工具和手机测试时,不校验安全域名配置无法同步。
即在开发者工具中(真机调试的工具面板里也是)虽然设置了不校验,但是真机调试时手机上仍然校验了,导致真机中HTTP_REFERER没有值(域名切换为正式的安全域名是没问题的)


解决办法:接口请求改成https协议的域名即可


我自己的是因为本地https证书死活安装不成功,443端口玩不了,只能用http80端口
所以本地代码的接口地址写的是http协议的域名,微信开发工具上也勾选了

不校验合法域名、https证书那项
在微信开发工具上溜的一批,一到真机调试就不行了,真机调试面板接口请求的有Referer,但是后端没接收到就很尴尬,一开始以为是nginx设置有问题,后来发现跟它没关系,接口改成https协议的域名就OK了,mmp,记一下。

.

你可能感兴趣的:(小程序,真机调试,Referer)