之前使用Ajax和服务端做交互时只是理所应当的把Ajax写成了如下所示的样子。
$.ajax({
url: "",
type: "",
dataType: "",
data: {},
success: function () { }
});
可是今天和服务端联调时遇到了一个问题。Ajax的data给服务端的是一个json串,无论我前端怎么编码,后端始终都会报错,真是要了亲命了。各种找原因,又看jQuery的api。contentType闪现了。会不会是它?试着写上去,成为如下的形式:
$.ajax({
url: "",
type: "",
dataType: "",
contentType:"application/json",
data: {},
success: function () { }
});
继续联调,居然不报错了。看来就是因为它。
度娘了好多文章都说是得指定这个属性,可是详细的为什么要这么做却没有说明白。写到这里就是想得到大家的指点,想了解为什么要这么做,我之前不这样写也没报错呢?