在请求标头中说“没有javascript”的常用方法是什么?

时间:2011-06-07 21:58:56

标签: javascript http browser header

我想告诉服务器浏览器不支持javascript。

最常见的做法是什么? (什么标题最常见?)

3 个答案:

答案 0 :(得分:6)

HTTP协议没有定义任何此类标头。所以你可以使用自定义的。像:

X-JAVASCRIPT-ENABLED: false

但是你当然可以使用你喜欢的任何其他标题。顺便问一下,为什么服务器会关心客户端是否支持javascript?我的意思是这是客户的责任。 <noscript>标记是向不支持javascript的客户提供替代内容的好方法。

答案 1 :(得分:0)

也许你对javascript

发送请求时应该正常设置的字段感兴趣
 X-Requested-With=XMLHttpRequest

无论如何,这种方法无论何时何地都不起作用,因此您可以自行承担风险。

答案 2 :(得分:0)

@Darin 的答案曾经是正确的,今天人们会使用 Content-Security-Policy: sandbox (...)

我只推荐 Content-Security-Policy: sandbox; 作为最安全的选项,但这将不仅仅禁止脚本;允许“除脚本之外的所有内容”,它可能是:

Content-Security-Policy: sandbox allow-downloads-without-user-activation allow-forms allow-modals allow-orientation-lock allow-pointer-lock allow-popups allow-popups-to-escape-sandbox allow-presentation allow-same-origin allow-storage-access-by-user-activation allow-top-navigation allow-top-navigation-by-user-activation;

唯一缺失的值是 allow-scripts

(但同样,我建议您只启用所有沙盒功能,例如 Content-Security-Policy: sandbox;