为了账号安全,请及时绑定邮箱和手机立即绑定

Jquery - 如何使$ .post()使用contentType = application /

Jquery - 如何使$ .post()使用contentType = application /

潇湘沐 2019-08-15 17:07:56
Jquery - 如何使$ .post()使用contentType = application / json?我注意到在jquery中使用$ .post()时默认的contentType是application / x-www-form-urlencoded - 当我的asp.net mvc代码需要有contentType = application / json如何使$ .post()发送contentType = application / json?我已经有了大量的$ .post()函数,所以我不想改成$ .ajax(),因为它需要花费太多时间如果我试试$.post(url, data, function(), "json")它仍然有contentType = application / x-www-form-urlencoded。那么如果“json”参数没有将contenttype更改为json,那究竟该做什么呢?如果我试试$.ajaxSetup({   contentType: "application/json; charset=utf-8"});这有效但影响我拥有的每一个$ .get和$ .post并导致一些破坏。那么有什么方法可以改变$ .post()的行为来发送contentType = application / json?
查看完整描述

3 回答

?
斯蒂芬大帝

TA贡献1827条经验 获得超8个赞

我想你可能不得不这样做

1.修改源代码以使$ .post始终使用JSON数据类型,因为它实际上只是预配置$.ajax调用的快捷方式

要么

2. 定义您自己的实用程序功能,它是$.ajax您要使用的配置的快捷方式

要么

3.你可以$.post function通过猴子补丁覆盖你自己的实现。

示例中的JSON数据类型是指服务器返回的数据类型而不是发送到服务器的格式。


查看完整回答
反对 回复 2019-08-15
?
繁花如伊

TA贡献2012条经验 获得超12个赞

$.ajax({
  url:url,
  type:"POST",
  data:data,
  contentType:"application/json; charset=utf-8",
  dataType:"json",
  success: function(){
    ...
  }})

请参阅:jQuery.ajax()


查看完整回答
反对 回复 2019-08-15
?
ITMISS

TA贡献1871条经验 获得超8个赞

最后我找到了适合我的解决方案:

jQuery.ajax ({
    url: myurl,
    type: "POST",
    data: JSON.stringify({data:"test"}),
    dataType: "json",
    contentType: "application/json; charset=utf-8",
    success: function(){
        //
    }});


查看完整回答
反对 回复 2019-08-15
  • 3 回答
  • 0 关注
  • 15836 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信