【问题标题】:Content-disposition or others in http-equiv?http-equiv 中的内容处置或其他?
【发布时间】:2012-08-02 03:37:04
【问题描述】:

http-equiv 元标记支持的标头列表是一个有限的子集,还是它实际上接受您可以作为 http 标头的任何内容?

具体来说,我可以使用content-disposition吗?

【问题讨论】:

    标签: html http http-headers meta-tags


    【解决方案1】:

    浏览器、搜索引擎和其他软件几乎都会忽略所有meta 标签。

    尽管 HTML 4.01 规范说“HTTP 服务器使用 [http-equiv] 属性来收集 HTTP 响应消息标头的信息”,但这不会发生。 (很久以前在一些特殊的服务器中就发生了一些这样的属性。)相反,带有http-equiv 属性的meta 标记被浏览器 识别,但仅在极少数情况下。最重要的情况是http-equiv="Content-Type" 可用于决定字符编码,如果它已在实际 HTTP 标头中指定。

    在 HTML5 草稿中,带有http-equiv 属性的meta 标签称为“pragma directives”,并指定了一个明确的允许值列表。因此,所有其余的都是不合格的(实际上,大多数是只写标签,被浏览器忽略)。

    你不能在那里使用content-disposition 影响任何东西。要影响浏览器处理您在 HTML 文档中链接到的 CSV 文件的方式,您可能无法在 HTML 中执行任何操作。您必须让服务器发送实际的 HTTP 标头,通常这样您的链接才能引用服务器端脚本,该脚本会获取 CSV 文件并将其与合适的 HTTP 标头一起发送。

    【讨论】:

    • 您好...感谢您的精彩解释!所以实际上,我正在尝试做的事情在某种程度上略有不同,反过来。基本上,我已经在浏览器中呈现了一个 HTML 页面,当然包含一些 Javascript。然后我想做一些我还没有完全解决的魔法,从已经加载的 javascript 中触发“将文件另存为...”对话框。我要下载的文件本身就是 HTML,我希望它使用 HTML 扩展名保存....
    • 但我认为我想出的最佳探索路径是location = 'data:(some-mime-type);(some-http-header-thingies),<!doctype html><meta charset=utf-8><title>t</title><p>my html page</p>。我认为要探索的是Content-TypeContent-Disposition,然后我认为将MIMEtype 欺骗为浏览器知道它无法处理的东西是有希望的。就像我制作 exe chromium 的 mimetype 一样,除了让用户将其转储到他们的 FS 之外,它实际上无法做任何事情。但是我想知道我是否会被限制使用.exe 文件名,你知道吗?
    • 关于实现我所描述的任何更多提示?
    • 我不太明白您想要达到的目标,但我认为 a) 它属于不同的标题,b) 出于安全原因,这可能是不可能的,c) 很难想象一下什么时候可能需要。从浏览器保存 HTML 文件是一个非常简单的操作,任何可能从中受益的人都应该知道如何操作。
    • @haxxerz 看看this question,你也应该阅读File API(虽然它还没有被普遍支持)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-02
    • 1970-01-01
    • 2023-03-25
    相关资源
    最近更新 更多