我有一个提供目录的简单连接服务器。我想向它所服务的所有文件发送一个自定义 HTTP 标头。这是我现在的代码:
var connect = require('connect');
var app = connect()
.use(connect.static('public'))
.listen(3000);
如何将标头发送到公共目录中的每个页面(甚至是服务器提供的每个页面)?
(出于好奇,我正在尝试将“x-frame-options”发送到每个页面)
我有一个提供目录的简单连接服务器。我想向它所服务的所有文件发送一个自定义 HTTP 标头。这是我现在的代码:
var connect = require('connect');
var app = connect()
.use(connect.static('public'))
.listen(3000);
如何将标头发送到公共目录中的每个页面(甚至是服务器提供的每个页面)?
(出于好奇,我正在尝试将“x-frame-options”发送到每个页面)
您有两个选择:编写您自己的中间件来发送标头,或者使用 lib。
Helmet是一个中间件,它实现了多个安全标头,包括 x-frame。您的代码将类似于:
var app = connect()
.use(connect.static('public'))
.use(helmet.xframe('allow-from', 'http://example.com'))
.listen(3000);
要手动添加标头,无需任何额外的库,您可以通过编写自己的中间件来执行以下操作:
function addMyHeaders(req, res, next){
res.setHeader("X-My-custom-header", ":{D");
next();
}
var app = connect()
.use(addMyHeaders)
.use(connect.static('public'))
.listen(3000);