javascript - 如何在 express.js node.js 中设置 X-Frame-Options

标签 javascript node.js express iframe embed

我有一些静态 Assets ,我想在多个桌面/移动网络客户端的 iframe 中提供服务。

现在,我如何将允许的一组特定来源列入白名单 X-Frame-Options header 的设置,以便资源可以作为 iframe 嵌入 在不同的桌面/移动网络客户端中。 对于所有其他来源,拒绝访问此资源。

经过一些挖掘,我开始了 -

const app = express();

var allowCrossDomain = function (req, res, next) {
    res.header('Access-Control-Allow-Origin', '*');
    res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,OPTIONS');
    res.header('Access-Control-Allow-Headers', 'Content-Type, X-Requested-With, Authorization');
    if (req.method === "OPTIONS") res.send(200);
    else next();
}
app.use(allowCrossDomain);

现在在这里如何使用白名单原始值设置 X-Frame-Options header -

最佳答案

您应该导入 helmet并使用 frameguard将一些来源列入白名单。有关此主题的更多信息:MDN X-FRAME-OPTIONS Best Practice Security

关于javascript - 如何在 express.js node.js 中设置 X-Frame-Options,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46998540/

相关文章:

javascript - 删除以前的元素后如何动画元素向上移动?

node.js - 如何使用 ng-repeat 从两个不同的集合中获取数据

node.js - 无法删除 Node Express 中的 x-powered-by header

node.js - Nodejs如何处理多张图片上传

node.js - Ember 与 Node(MEEN 堆栈?)

javascript - 无法使用JS创建表

javascript - Firefox 扩展中的 LocalStorage

javascript - 使用带有 SqlDependency 的 SignalR 推送数据库更新

python - 如何使用node js运行python程序

node.js - 如何在nodejs中使用mongoose选择mongodb中的深层嵌套数据