我正在Ubuntu和Google Analytics(分析)上使用PhantomJS / CasperJS运行一些测试,并且我在GA方面遇到问题,无法正确识别我在HTTP请求标头中发送的语言设置。
无论我在我的Accept-Language标头中输入的内容是什么,我最终都将GA分类为“ c”。
我确定我的Accept-Language标头正确,这是一个示例:
ACCEPT-ENCODING:gzip, deflate
CONNECTION:Keep-Alive
ACCEPT-LANGUAGE:en-US
USER-AGENT:Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1
ACCEPT:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
经过长时间的反复试验,我发现C实际上是Ubuntu自身内部LANG env变量的默认设置:
LANG=C.UTF-8
实际上,我可以通过在命令行中使用以下命令来更改我的ENV变量,从而影响Google Analytics(分析)的分类:
export LC_ALL="en_US.UTF-8"
如果我仅设置“ export LC_LANG”或“ LANGUAGE”,它将不起作用。我也不知道为什么。
但是如何从PhantomJS / CasperJS内部控制此设置?我不能/不想为从CLI运行的每个PhantomJS更改我的ENV变量,我测试了多种语言立刻大量。
任何人都经历过并且可以提供帮助吗?
答案 0 :(得分:0)
我设法找到了解决该问题的办法。我只是在CLI中使用以下命令:
$ LC_ALL=en-gb phantomjs script.js
,并将正确接受语言传递给Google Analytics(分析)。
我认为CasperJS请求标头正确传递给PhantomJS会出现问题。