【问题标题】:Input's accept attribute doesn't recognise application/json?输入的接受属性不识别应用程序/json?
【发布时间】:2018-03-21 15:27:09
【问题描述】:

我有一个从用户那里获取文件输入的应用程序。它接受的文件类型之一是 JSON。

inputaccept 中的文件扩展名在 most browsers 中被很好地识别(Safari 是主要的异常值),因此有时需要使用 MIME 类型。对于 JSON,扩展可以正常工作,但如果您使用 correct MIME type,则输入默认为“所有文件”作为过滤器。

Extension (.json): <br>
<input type="file" accept=".json">

<br><br>

MIME type: (application/json): <br>
<input type="file" accept="application/json">

这仅发生在 JSON 中,据我所知。这是为什么?类型还没有被完全接受吗?是bug吗?

编辑

测试日期:

                        | First | Second |
------------------------|-------|--------|
Windows 10/Chrome 61    |Success|  Fail  |
Windows 10/Firefox 56   |Success|Success |
OSX ElCapitan/Safari 9  | Fail  |Success |
Windows 10/Edge 40      |Success|  Fail  |

看到它在 Firefox 上运行后,我开始认为这是 Chrome 上的一个错误。

【问题讨论】:

  • 组合起来怎么样 - accept=".json,application/json",我想知道它的行为如何?
  • @Teqchiqe 好吧,这将适用于所有浏览器。但问题是为什么它不能单独工作。我认为这是一个错误。
  • Chrome 早就修复了这个 bug。

标签: html json


【解决方案1】:

请试试这个标题:

accept="application/JSON"

它对我有用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-01-31
    • 1970-01-01
    • 2020-03-15
    • 2021-07-09
    • 1970-01-01
    • 2018-01-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多