无需 KYC —— 无需身份证、自拍、文件证明。支持加密货币支付:BTC, USDT, USDC, ETH, SOL, LTC
语言: 简体中文
开始使用

代理错误参考 · HTTP 状态码

401 Unauthorized 与 407 Proxy Authentication Required

HTTP 状态码(4xx,客户端错误):每个工具中的精确错误信息、可能原因排序及有效解决方案。

最后更新:

快速回答

代理中的401 Unauthorized vs 407是什么意思?

401 Unauthorized来自网站;407来自代理。 如果用 CrawlRelay住宅代理抓取时遇到401,说明代理通过了验证,但网站要求自身登录或API密钥。代理凭证对此无效。代理URL中修正407,按网站规定处理401。

401 Unauthorized vs 407一览

错误401 Unauthorized vs 407
类型HTTP 状态码(4xx,客户端错误)
发送方目标网站,而非代理
定义于RFC 9110, section 15.5.2 (compare 407: section 15.5.8)
要重试吗?不是。401是网站要求提供自身凭证
先检查检查哪个服务器返回:网站(401)还是代理(407)

401 Unauthorized vs 407是什么意思?

RFC 9110将这两个状态码配对。401带有WWW-Authenticate头部,要求原始服务器凭证;407带有Proxy-Authenticate头部,要求代理凭证。响应分别在Authorization(网站)和Proxy-Authorization(代理)头部。二者都含“认证”字样,易混淆。最简单区分是状态码:401说明代理已通过。

在Python、curl、Node.js和浏览器中a 401是什么样?

每个工具中相同的失败会有不同的提示信息。请在日志中搜索以下信息:

  • Python requests: status_code == 401带WWW-Authenticate头部(网站) vs 带407提示的ProxyError(代理)
  • curl: 成功的CONNECT(网站)返回HTTP/2 401 vs 代理返回CONNECT tunnel failed, response 407
  • API: JSON体如{"message": "Unauthorized"}或无效令牌消息

导致a 401的原因是什么?

最可能的首要原因:

  • 需要登录或API密钥的页面或API。 是网站而非代理要求。
  • 代理凭证放在错误位置, 例如Authorization头部,本应给代理的凭证被网站拒绝。
  • 多步骤流程中的过期会话Cookie或令牌。
  • 令牌绑定IP或区域, 换出口IP令牌失效。

如何一步步诊断a 401?

  1. 确认状态码:401是网站,407是代理。
  2. 运行下面curl测试,若401前有HTTP/1.1 200 Connection established,说明代理正常。
  3. 浏览器访问同一URL是否需要登录?
  4. 多步流程中401是否由出口IP更换触发?
用curl测试失败的URL(HTTP端口,详细模式)
# Use the URL that fails; with https://api.ipify.org instead, you test the gateway alone.
# "HTTP/1.1 200 Connection established" first, then the site's own status: the site answered.
curl -v -x http://USERNAME:[email protected]:7777 https://TARGET_URL

# Same test through the SOCKS5 port, with DNS resolved at the exit
curl -v --socks5-hostname gw.crawlrelay.com:7778 --proxy-user USERNAME:PASSWORD https://TARGET_URL

如何修复a 401?

  • 代理问题(407)时, 凭证应放代理URL或客户端代理设置,切勿放Authorization头部。
  • 需要API密钥的公共接口, 请在网站注册并按文档发送密钥。
  • IP绑定的会话, 整个流程使用粘性会话。
  • 受登录保护的内容, 自动化前请查阅网站条款。抓取非持有账号内容或登录后个人资料,违反我们的使用政策。

遇到a 401后要重试吗?

不要盲目重试401。它表示请求缺少某项凭证。如果流程中有令牌或会话,先刷新Token或会话,然后尝试一次。多次401表示内容非公开或访问已结束。

401 Unauthorized vs 407如何应用于CrawlRelay?

HTTP代理凭证问题表现为407或隧道失败,而非401。如果你在 CrawlRelay网关使用时见401,说明请求已到达网站,定位问题快速。

网关:gw.crawlrelay.com,端口7777(通过CONNECT的HTTP、HTTPS)和端口7778(SOCKS5)。用户名格式:USERNAME-country-{cc}-state-{state}-city-{city}-zip-{zip}-asn-{asn}-session-{id}-ttl-{minutes}。相关内容:407 Proxy Authentication Required · 403 Forbidden · Sessions guide。

401 Unauthorized vs 407:开发者常问的问题

为什么我代理密码正确却出现401错误?

因为401有关网站而非代理。代理登录成功,网站要求自己的凭证,如API密钥、登录Cookie或令牌。请查阅网站文档。内容若需你无权访问的登录,别自动化。

粘性会话能解决401错误吗?

有时能。一些网站将会话或令牌绑定到创建它的IP,此时换出口IP使令牌失效,网站返回401。用一个粘性会话贯穿流程能避免。若凭证缺失则无效。

HTTP请求中代理凭证放哪里?

放在Proxy-Authorization头部,是你客户端基于代理URL中的user:password@部分生成的。网站看不到此头部,代理会移除。网站凭证放在Authorization头部或Cookie中,代理直接透传。

本参考中的其他代理错误

HTTP 状态码

浏览器和客户端错误

连接和 TLS 错误

带有涵盖失败案例文档的住宅代理

来自US$0.50/GB的CrawlRelay住宅代理,流量永不过期。

从 US$0.50/GB 开始 · 无需 KYC

开始使用