http-headers - Headless chrome 不发送 Accept-Language header

标签 http-headers fiddler google-chrome-headless http-accept-language

在测试 headless Chrome 时,我注意到它不会传输 Accept-Language header 条目。我已经确认,当存在可见的浏览器窗口时,它确实会被发送。

这是否有原因?chrome 是否可以选择要求/强制它发送这些正常值?

要查看此内容,您可以启动 Fiddler 并在命令行中输入以下内容:

chrome --headless --incognito --window-size=1920,1080 --disable-gpu --no-sandbox http://www.daringfireball.net/

在 Fiddler 检查器(原始 View )中,您将看到以下内容:

GET https://daringfireball.net/css/ie_sucks HTTP/1.1
Host: daringfireball.net
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/65.0.3325.181 Safari/537.36
Accept: text/css,*/*;q=0.1
Referer: https://daringfireball.net/
Accept-Encoding: gzip, deflate

在没有 --headless 的情况下运行相同的命令会得到以下结果:

GET https://daringfireball.net/css/ie_sucks.php HTTP/1.1
Host: daringfireball.net
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36
Accept: text/css,*/*;q=0.1
Referer: https://daringfireball.net/
Accept-Encoding: gzip, deflate, br
Accept-Language: en-GB,en-US;q=0.9,en;q=0.8

最佳答案

运行 headless 模式时,设置以下选项:

'--lang=en-GB'

关于http-headers - Headless chrome 不发送 Accept-Language header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49553714/

相关文章:

css - 如何在 headless Chrome 中更改纸张大小 --print-to-pdf

php - 动态创建和下载 Doc 文件

PHP header HTTP 1.0 与 1.1

settings - 如何为规则设置 Fiddler2 首选文本编辑器?

java - 无法通过 Heroku 中的 Selenium webdriver(Java) 调用 headless chrome 驱动程序

java - 无法使用 headless (headless)模式 Selenium 定位元素

java - 我如何知道何时关闭 HTTP 1.1 Keep-Alive 连接?

http-headers - 如何使用 cookie 创建 HTTP 客户端请求?

protocol-buffers - 让 Fiddler 理解(即解码)使用 Protocol Buffer 编码的 HTTP 请求/响应