前后端通信走json格式合理不?

我司现在实现前后端分离,后端传递数据走的是json格式,前端如果提交数据是将数据type变为
Content-Type:application/x-www-form-urlencoded”的格式后传递数据,但这种方式走的是键值对的格式,感觉不是很方便,想问下,各位大佬,如果当遇到复杂的数据格式时,前端给后端传 json 格式的type:
Content-Type:application/json;charset=UTF-8,该方案是不是更加合理?

阅读 10.1k
16 个回答

只要后端能根据前端给的既定规则解析前端发送的数据就是合理,你这种情况是为了更加方便,想数据格式一致化,没什么不好的,况且现在json格式是主流

公司现在使用的就是前后端都是用json,但是用了一段时间发现了一些问题,在浏览器方面,使用Content-Type:application/json;charset=UTF-8发送数据的时候,这个请求将不再是简单请求,而变成了跨域复杂请求,浏览器前端会发送一个额外的OPTION请求到服务器,觉得好浪费,所以准备退到Content-Type:application/x-www-form-urlencoded

用json当然可以,不过主要还是看场景来决定用哪种方法

用json更方便吧,可以直接传递对象,后端处理数据也方便一点

那就统一用json吧,不要用form了

很合理 ,后端处理起来也比较方便,目前的项目就在用,前后都是Json,把json当数据的载体了

新手上路,请多包涵

可以啊,什么格式都行,只要你跟后台商量好,并且符合实际成精就OK

当然合理,这个看具体场景啊,前后端做好协商怎么传都是ok的,当然还要结合具体场景来分析

Content-Type:application/x-www-form-urlencoded
Content-Type:application/json
我遇到一个很奇怪的问题,希望各位能帮忙解决一下,我的webapi 使用cors跨域的,并且使用'Authorization'作为用户登录验证的,在使用Content-Type:application/json 的时候经过cors跨域处理之后,原有的请求头会打包到 request payload 里面去,导致读取不了验证信息, 使用了Content-Type:application/x-www-form-urlencoded 可以保证通过cors跨域处理后 读取原有请求头的验证信息,但是因为数据格式是json,又引致415 数据格式不正确.有大牛遇到这种情况吗?帮我想个解决方案

新手上路,请多包涵

非常的合理,因为我就是这样做的

现在不都用json...以前还有用xml的

现在前后端交互数据不都是采用的json格式吗。

首选json,js再友好不过

新手上路,请多包涵

不要form表单提交,用ajax就行了

需要前后端提前沟通好数据交互格式

现在都用json,json格式对于前后端处理数据也方便

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