【问题标题】:MIME type for a JSON fileJSON 文件的 MIME 类型
【发布时间】:2019-01-28 08:26:23
【问题描述】:

我有一个 JSON 文件,我想通过 Multipart 请求上传到服务器。在这个过程中,我需要确定文件的 MIME 类型。我使用了以下方法来确定 MIME 类型:

MimeTypeMap.getSingleton().getMimeTypeFromExtension(
                    fileExtension.toLowerCase());

对于“.json”的扩展,它返回一个null,即json没有注册到任何应用程序类型。

如何获取 JSON 文件的 MIME 类型?以上 API 在the most upvoted answer on another SO post 中获取文件的 MIME 类型。是否有任何 API 可以正确获取?

【问题讨论】:

  • 你不知道mime类型吗?或者您不知道如何以编程方式获取它?
  • Mime 类型应该与服务器无关。您可以对任何文件使用 application/octet-stream。
  • 一个 json 文件只是文本。所以 text/plain 应该可以。

标签: android mime-types


【解决方案1】:

如果您有 Apache,请确保此行位于 .htaccess 中。

AddType application/json .json

如果 IIS 确保 *.json 的 MIME 类型是 application/json。

【讨论】:

  • 这仅适用于 Android!
【解决方案2】:

这对您来说可能为时已晚,但也许可以供将来参考:

JSON 的 MIME 媒体类型是 application/json,如 very popular answer 中所述。

由于您知道并期望您的文件是 .json,因此您可以将 MIME 类型硬编码为 `application/json。

来自Android docs 的 Kotlin 示例:

private val READ_REQUEST_CODE: Int = 42

private fun performFileSearch() {
    val intent = Intent(Intent.ACTION_GET_CONTENT).apply {
        addCategory(Intent.CATEGORY_OPENABLE)

        type = "application/json" // MIME media type
    }

    startActivityForResult(intent, READ_REQUEST_CODE)
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-01-12
    • 2018-06-27
    • 2021-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-07
    • 2018-12-01
    相关资源
    最近更新 更多