有许多“标准”为“标准”Json Json (Json Json) (Json Json Json) (Json Json) Json Json (Json Json) Json (Json) Json (Json) Json (Json) Json (Json) Json (Json) Json (Json) Json(Json) Json (Json) Json (Json) Json(Json) Json (Json) Json内容类型 :

application/json
application/x-javascript
text/javascript
text/x-javascript
text/x-json

我用哪一种,在哪里?我假设安全和浏览器支持问题是一个因素。

相关:如果JSON被AST API送回来 是什么MIME类型?


当前回答

扩大被接受的答复, 当你使用JSON 在REST背景下...

有一个强力论据关于使用application/x-resource+jsonapplication/x-collection+json当时,你们是代表最高科技委员会的资源和收藏的。

如果你决定遵循jsonapi 计数器具体说明,您应该使用技术的application/vnd.api+json正如文件所记载的那样。

虽然不存在普遍标准,但显然,在所转让资源中增加的语义显然证明有必要更明确地说明内容类型不只是application/json.

根据这一推理,其他情况可以证明有理由更具体地说明内容类型.

其他回答

JSON 的正确内容类型是application/json除非你们在使用贾索普,也称为 Json with Padding, 实际上是 JavaScript, 所以正确的内容类型将是application/javascript.

Json Json (Json Json) (Json Json Json) (Json Json) Json Json (Json Json) Json (Json) Json (Json) Json (Json) Json (Json) Json (Json) Json (Json) Json(Json) Json (Json) Json (Json) Json(Json) Json (Json) Json(JavaScript 对象注释)和贾索普格式似乎非常相似,因此可能非常混淆它们应该使用哪种MIME类型。尽管格式相似,但两者之间有一些微妙的差别。

因此,每当有任何疑问时,我有一个非常简单的方法(在多数情况下完全正常),即去检查相应的RFC文件。

Json Json (Json Json) (Json Json Json) (Json Json) Json Json (Json Json) Json (Json) Json (Json) Json (Json) Json (Json) Json (Json) Json (Json) Json(Json) Json (Json) Json (Json) Json(Json) Json (Json) Json RFC 4627(JavaScript 对象标记(JSON)的应用/json媒体类型)是JSON格式的规格。

application/json.

贾索普JSONP (“有垫板的JSson”) 在一个浏览器中处理的方式不同于 JSson 。 JSONP 被当作普通 JavaScript 脚本处理, 因此它应该使用application/javascript,JavaScript 的当前正式 MIME 类型。 但是,在许多情况下,text/javascriptMIME型也不错

请注意text/javascript被标记为过时的RFC 4329(媒体类型)文档,建议使用application/javascript类型。然而,由于遗留原因,text/javascript它仍然被广泛广泛使用,并有交叉浏览器支持(这并不总是在application/javascriptMIME类型,特别是使用较老的浏览器)。

如果从JSON的REST API获得数据,必须使用内容类型:

  • 关于JSON数据:内容-类型:申请/json
  • HTML 数据 :内容-类型:text/html,
  • 对于 XHTML 数据:内容-类型:应用/xhtml+xml,
  • XML 数据 :内容-类型:文本/xml, 应用程序/xml

缩略application/jsonPHP 中保存数组或对象数据的工作非常出色 。

我用这个代码把数据输入JSONGoogle Cloud 储存(GCS)设定了可公开观看:

$context = stream_context_create([
    'gs' => [
        'acl'=>'public-read', 
        'Content-Type' => 'application/json',
    ]
]);

file_put_contents(
    "gs://BUCKETNAME/FILENAME.json", 
    json_encode((object) $array), 
    false, 
    $context
);

要返回数据是直线前进的:

$data = json_decode(file_get_contents("gs://BUCKETNAME/FILENAME.json"));

并非所有内容都适合内容类型application/json.

如果您正在使用Ext JS向上传文件提交窗窗窗后,请注意服务器响应由浏览器解析,以创建文档<iframe>.

如果服务器正在使用 JSson 发送返回对象, 那么Content-Type必须设置为text/html以便告诉浏览器将未改变的文字插入文档正文。

见见Ext JS 3.4.0 API文件.