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

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

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

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


当前回答

我用下面的用法

contentType: 'application/json',
data: JSON.stringify(SendData),

其他回答

对于JSON,我使用:

Content-Type: application/json

工作队JSON数据交换格式7158提案第1.2节:JSON的规格对此作了说明。

NANA将JSON的正式MIME类型登记为申请/json。

当被问及为什么不是文本/json时,Crockford似乎说JSON其实不是JSON的JavaScript,也不是文本,而且IANA比文本/*更可能发出申请/*。

更多资源:

媒体类型 要求征求第4627条评论:JSON有一个类型

这取决于观点。

如果您是发送请求书的客户,那么申请/json就是正确的选择。

但如果您是收到请求的服务器, 您必须做好准备, 客户端也可以发送编码。 因此应用程序/ json 和 应用程序/ json; 字符set=utf-8 是有效的 。

两种情况下媒体类型相同。 但内容类型不同 。

如果您在客户端环境中, 调查交叉浏览器支持是强制的, 对于一个支持良好的网络应用程序来说 。

右侧的 HTTP 内容- ype 将是应用程序/ json, 其他人也已经强调过, 但有些客户对它处理不当, 这就是为什么jQuery 推荐默认文本/ html 。

PHP 中的应用程序/json 工作非常出色,可以存储数组或对象数据。

我用这个代码在谷歌云存(GCS)上将数据输入JSON,

$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"));