爬Ajax-在xhr遇到问题:-provisional headers are shown(没看见要爬的内容...)

chrome开发者工具内打开xhr显示没有query string parameter

回答

在 Chrome 开发者工具中,如果你发现 XHR 请求的 Query String Parameters 未显示,这可能是因为请求的数据并没有以 Query String 的形式传递,而是通过 Request Payload 或 Request Body 传递的。

通常情况下,当你在浏览器的地址栏中输入一个网址并回车访问时,浏览器会自动将地址栏中的所有内容拼接成一个完整的 URL,包括路径和查询参数。这种形式的参数被称为 Query String Parameters

然而,对于 XHR 请求来说,情况可能会有所不同。XHR 请求可以使用多种方式传递数据,例如:

  • 作为 Query String 参数传递

  • 作为 Request Payload 传递

  • 作为 Cookie 传递

  • 作为 Header 传递

如果你的 XHR 请求使用了除 Query String 以外的其他方式传递数据,那么在 Chrome 开发者工具中就无法看到这些数据。

例如,如果请求使用 POST 方法并将数据编码为 Request Payload 的一部分,那么这些数据就不会出现在 Query String Parameters 中。相反,它们会在 Request Payload 或 Request Body 中显示24

所以,如果你在 Chrome 开发者工具中看不到 Query String Parameters,你可以检查一下你的 XHR 请求是否使用了其他方式传递数据。如果是的话,你应该能在相应的区域找到这些数据。

-------------------------------------------------------------------------------

操作:在network选项下disable cache

------------------------------------------------------------------------------

chrome开发工具,disable cache 后,在xhr响应头部分仍看到Provisional headers are shown"

回答

在Chrome开发工具中,当你看到"Provisional headers are shown"这样的提示时,可能有以下几种情况:

  1. 请求未通过网络发送:在这种情况下,请求是从本地缓存提供的,而不是通过网络发送的,因此它不存储原始请求标头。在这种情况下,你可以尝试禁用缓存以查看完整的请求标头1
  1. 网络资源无效:例如,在console中尝试输入一个不存在的URL,由于安全原因,DevTools可能只显示临时标题1
  1. 请求被浏览器插件拦截:如果你的Chrome浏览器上安装了许多插件,那么这可能是其中一个插件拦截了你的请求23
  1. 服务器出错或者超时:如果服务器没有给出真正的响应,那么你也会看到这样的提示23
  1. 强缓存:如果请求是从硬盘缓存或者内存缓存中获取的,那么你也看不到完整的响应标头23

如果你已经禁用了缓存,但还是看到了这样的提示,那么可能是上述的一种或者多种情况导致的。你可以尝试检查你的网络请求,看看是否有任何可以被优化的地方,比如确保你的请求没有被浏览器插件拦截,或者你的服务器能够正常响应请求。

-

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值