gpt4 book ai didi

javascript - 网络安全: What happens when Content-Disposition is not supplied?

转载 作者:行者123 更新时间:2023-12-02 23:22:19 26 4
gpt4 key购买 nike

我允许用户从我的应用程序下载文件。为此,我根据文件类型明确将“Content-Disposition”设置为“内联”或“附件”。现在这有点手册。因此,对于 pdf 文件,我将其设置为“内联”,但对于 html 文件,我将其设置为“附件”。

  1. 有没有办法根据文件类型自动决定express中“Content-Disposition”的值?

  2. 如果我不发送“Content-Disposition” header ,目前在我看来,该请求将被视为具有“Content-Disposition:inline”。这个观察是否正确,还是还有更多的内容?

  3. 如果默认情况下浏览器尝试执行/预览文件(基于第 2 点),当您允许下载可以执行 JavaScript 的 html 文件时,这对安全意味着什么?

最佳答案

Is there a way to automatically decide the value of "Content-Disposition" in express based on file type ?

您可以编写中间件来检查响应并修改它。

If I do not send a "Content-Disposition" header, it seems to me currently that the request is treated like it has "Content-Disposition: inline" . Is this observation correct, or is there something more to it?

参见MDN其中表示:“HTTP 上下文中的第一个参数是 inline(默认值,表示它可以显示在网页内,或作为网页显示)...”

If by default browser tries to execute/preview the files (based on point 2), what does it mean for security when you allow downloading html files which can execute javascript?

不会太多,除非您提供您(网站作者)不信任的 JavaScript。

如果您需要提供可能包含您不信任的 JavaScript 的 HTML 文档,则从不同的来源提供它们(使用同源策略对它们进行沙箱处理)和/或实现 Content Security Policy禁止他们执行 JavaScript。

关于javascript - 网络安全: What happens when Content-Disposition is not supplied?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56892700/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com