在 puppeteer + Charles 中从本地主机更改为代理时得到 302

Posted

技术标签:

【中文标题】在 puppeteer + Charles 中从本地主机更改为代理时得到 302【英文标题】:getting 302 when changing from local host to a proxy in puppeteer + Charles 【发布时间】:2021-02-26 11:37:53 【问题描述】:

所以我使用 Charles 的外部代理设置并使用 puppeteer,问题是当我将代理服务器作为本地主机放在 puppeteer 中时

"--proxy-server=127.0.0.1:8888"

一切正常,但是当我关闭 Charles 并使用另一个经过身份验证的代理时,服务器返回 302 的状态并重定向我, 我检查了本地主机的标头,当我更改代理时,两者都是相同的

我用这个作为标题

  await page.setExtraHTTPHeaders(
     "Host": "www.supremenewyork.com",
  "Connection": "keep-alive",
  "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/88.0.4324.182 Safari/537.36",
  'Accept':"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
  "Sec-Fetch-Site": "same-origin",
  "Sec-Fetch-Mode": "cors",
  "Sec-Fetch-Dest": "empty",
  "Accept": "application/json",
  "Sec-Fetch-User": "1",
  "Sec-Fetch-Dest": "document",
  "referer" :`https://www.supremenewyork.com/mobile/`,
  "Accept-Encoding": " gzip, deflate, br",
  "Accept-Language": " en-GB,en-US;q=0.9,en;q=0.8",
  "Cookie": `$set_cookie`,
  "dnt": "1",
  "sec-fetch-site" : "same-origin"
,
)

【问题讨论】:

【参考方案1】:

由于某种原因,问题是由于代理身份验证,我使用了代理链,它解决了 XD

【讨论】:

以上是关于在 puppeteer + Charles 中从本地主机更改为代理时得到 302的主要内容,如果未能解决你的问题,请参考以下文章

c++内存示例07允许从本共享

“允许从本网站访问以下应用程序”提示 - Java

如何为网站创建功能齐全的 Android 应用程序?

从本类调用另一个类的方法

Puppeteer:如何在 ec2 服务器上安装 puppeteer

Python调用Zabbix api之从入门到放弃——从本节开始放弃