text/plain和application/json发送数据都一样的效果,为什么没看见使用text/plain的?

1.问题由来

在传递json数据的时候。通常都是使用application/json,并通过JSON.stringify(data)传换为json字符串来传递。

但是最近发现,如果把Content-Type改成text/plain,也可以传递json字符串,达到的效果是一样的。

2.问题

然后看了一下http请求体,发现两者传递数据都是 Request Playload 格式,两者并没有什么区别,为什么不使用常规的text/plain来传递json字符串呢?

求大神讲解。

阅读 32k
1 个回答

传递数据设置为application/json,就是告诉请求的接收者,body体的数据格式是符合json格式的,接受者拿到这些数据后可以直接使用相应的格式化方法转换成处理语言识别的数据对象或者框架拦截器自动进行转换,能更早发现数据传递上的错误
如果直接通过text/plain传递,那么接收者需要自己执行判断怎么处理这个数据。
这个更多是前后台API接口的规范性的要求

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题