对于在 Firefox 中能正常工作的请求,先看 Firefox 实际发出的内容:

  1. 打开 Network Monitor,复现操作并选中对应请求。使用 Copy → Copy as cURL。
  2. 第一次对照时保留目标、方法、请求体和相关请求头。代理单独选择,加上:
--proxy http://proxy.example:8080

若要在不使用复制的凭据、Cookie、私有请求体数据或代理凭据的前提下,另做一次获准的公开页面对照,HTTP 代理列表提供了候选端点。随后对比响应和失败环节。仅凭 User-Agent 字符串无法重现表单提交、Cookie 或令牌。

选择与操作对应的网络条目:一个页面可能产生重定向和大量资源。若要跟随重定向,请检查其目标,而不要假定 curl 的跳转与 Firefox 完全一致。对 HTTPS,curl 负责 CONNECT 和目标站点的 TLS;不要把复制来的请求改写成另一次手工 CONNECT 交换。

分享命令之前,请隐去 Cookie、授权信息和私有请求体值,同时保留方法、目标和有用的错误上下文。复制请求可能把正在使用的账号数据一并复制。

重放成功只说明这条 curl 请求在所选的线路上可用,并不重现浏览器 JavaScript、缓存状态或之后的所有页面请求。

相关文章