Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/450.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 正在获取用户代理值。服务器端还是客户端?_Javascript_Php_Server_Client_User Agent - Fatal编程技术网

Javascript 正在获取用户代理值。服务器端还是客户端?

Javascript 正在获取用户代理值。服务器端还是客户端?,javascript,php,server,client,user-agent,Javascript,Php,Server,Client,User Agent,我需要将用户代理值传递到前端 我可以使用$\u SERVER['HTTP\u USER\u AGENT']获取此值,并将其写入前端。 (实际上,我将使用Mage::helper('core/http')->getHttpUserAgent(),但我认为调用上述函数只是一个magento helper。) 或者我可以在客户端使用getnavigator.userAgent和js 哪个更好,为什么?我最关心的是速度 p、 我知道UA很容易被操纵。我们没有将任何重要功能基于该值,而是将其用作次要参数。

我需要将用户代理值传递到前端

我可以使用
$\u SERVER['HTTP\u USER\u AGENT']
获取此值,并将其写入前端。 (实际上,我将使用
Mage::helper('core/http')->getHttpUserAgent()
,但我认为调用上述函数只是一个magento helper。)

或者我可以在客户端使用get
navigator.userAgent
和js

哪个更好,为什么?我最关心的是速度


p、 我知道UA很容易被操纵。我们没有将任何重要功能基于该值,而是将其用作次要参数。

我个人会使用
navigator.userAgent
。主要是因为在我看来,将值从PHP传递到JavaScript是非常难看的。此外,这两个值将完全相同。即使有人决定编辑他们的用户代理


我认为简单是关键。

性能取决于目的。如果您在php中需要这个,那么将服务器变量与上面提到的helper getter一起使用。对于js,使用navigator对象


通常,navigator.userAgent和HTTP_USER_AGENT都是请求头的变量,并且都已经存在于内存中(对于js,服务器或用户浏览器)。因此,不可能有可测量的性能差异。

如果您将其传递到前端,并且可以从前端获取,那么为什么要使用服务器呢?原因非常接近-“许多好的问题都会根据专家经验产生一定程度的意见,但对这个问题的回答往往几乎完全基于意见,而不是事实、参考资料或特定的专业知识。”你可能想找一个发展论坛(也许?)如果你有具体的编码问题,请回到StackOverflow,我们会很乐意提供帮助。我使用chrome扩展将我的用户代理切换到google机器人的一个。navigator.userAgent没有更新,尽管在使用Puppeter测试同样的东西时,它也能工作。