JSON 内容类型有许多“标准 ” :

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

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

相关:如果JSON被REST API送回,什么MIME类型?


当前回答

给杰森:

Content-Type: application/json

JSON -P: 给JSON -P:

Content-Type: application/javascript

其他回答

贾森:

根据在 URL 中传递的查询参数, 回复是动态生成的数据 。

示例:

{ "Name": "Foo", "Id": 1234, "Rank": 7 }

内容类型:申请/json


JSON -P: 贾森 -P:

JSON用垫子。回应是 JSON数据, 并有一个功能电话围绕它。

示例:

functionCall({"Name": "Foo", "Id": 1234, "Rank": 7});

内容-类型:申请/标注

给杰森:

Content-Type: application/json

JSON -P: 给JSON -P:

Content-Type: application/javascript

当前的适当标准是应用程序/json。 虽然默认编码是 UTF-8, 值得一提的是, 它也可能是 UTF-16 或 UTF-32. 当 JSON 写入 UTF-16 或 UTF-32 时, 必须使用二进制内容传输编码 。

RFC 4627: JavaScript 对象标记的应用/json 介质类型(JSON)

5. 内容-传输-编码页眉字段(RRC 1341)是二进制传输编码的更多资料。

PHP 开发商使用此功能 :

<?php
    header("Content-type: application/json");

    // Do something here...
?>

如果JSON用垫子,那将是申请/jsonp。如果JSON没有划线,那将是申请/json。

要同时处理这两种问题,使用“应用/刺杀”是一种良好做法,无需担心是用垫子还是不用垫子。