Bootstrap

微信小程序在本地“远程调试”时请求本地localhost:xx/xx接口出现 Provisional headers are shown 问题解决方案

今天在做小程序项目获取openId等userInfo信息提交给后端接口存储到数据库的时候 遇到了一个坑,一请求后端接口,调试窗口就报错:Provisional headers are shown,如下图所示

选择远程调试:

这里写图片描述

报错信息Provisional headers are shown:

这里写图片描述

在网上找了相关的小程序开发遇到的类似问题寥寥无几,在一个问答社区(https://laravel-china.org/topics/13770/provisional-headers-are-shown-problem-appears-in-wechat-small-program-remote-debugging-interface)的回答中受到了启发,怀疑是小程序请求接口时对SSL证书检验的问题造成的。

于是我做了一个大胆的想法,试了一下先把后端接口写好丢到服务器,小程序使用域名访问该接口发现居然请求成功了!并没有报任何错误信息,特此记下这个坑,之前还没配置小程序的request合法域名的时候从来没有遇到这种问题,而且只要不选择远程调试,直接用小程序官方的编译器模拟运行也没有出现过这种问题,我怀疑是在微信小程序里配置了request合法域名信息后才会导致选择远程调试出现问题:Provisional headers are shown。

关于出现该:Provisional headers are shown问题,查了网上的解释一种说法是client发送请求后,由于各种原因,比如网络延迟,server端逻辑错误,导致client端长时间未收到响应。

最先开始我也以为是接口写的方法或者请求的方法配置不对,但是检查了代码发现并没有问题,没想到抱着试试的心态把代码部署到服务器上进行访问就解决了请求接口不成功的问题,具体是不是因为在配置了“request合法域名”才导致的远程调试会报Provisional headers are shown还有待考证,最近赶项目没时间测试了 ,等有时间了再验证一下是不是这个坑导致的,有空的大神们也可以验证一下是不是该原因导致的。

这里写图片描述

;