共计 648 个字符,预计需要花费 2 分钟才能阅读完成。
因为本身不太懂后端的配置,只能对问题大抵还原:
(1)微信小程序的资源放在客户的服务器上(小程序可能会给多个客户应用,所以每个客户的服务器上都别离寄存这个小程序的资源);(2)后端进行内网穿透代理:小程序只能有一个线上拜访的域名,于是公司部署了一个核心服务器,将所有的拜访转发到代理服务器即客户的服务器上;从客户服务器申请到资源再次通过核心服务器返回给前端;(3)问题呈现:前端进行登录操作,后果,报错 net:ERR_EMPTY_RESPONSE(谬误:空响应),控制台的 Preview 和 Response 都为空。
问题排查:(1)特地奇怪的是,通过域名拜访,会呈现响应出错的状况;而通过 ip 拜访,响应失常,就判断是不是域名解析谬误造成的,通过后端排查,域名解析失常。因为核心服务器对代理进行了失常的转发,并且服务器胜利收到了客户的代理服务器的响应数据。
(2)既然核心服务器拿到了数据,对浏览器进行响应的时候,浏览器却没有收到数据,并且报错,后盾由此判断很可能是响应头的问题,造成数据解析出错。又一一对 https 的响应头进行排查,因为通过 ip 能失常响应,所以与 ip 拜访的浏览器响应头进行比照。
问题所在 :最终,后盾发现是Transfer-Encoding 这个罪魁祸首,具体解释 https://developer.mozilla.org…。
最初,小程序能失常拜访了。
为什么通过 ip 拜访不会呈现这个问题,而用域名进行拜访的时候,就呈现编码出错,造成响应谬误的起因,临时未找到。如果有只知道搭档,谢谢告知。
正文完