1.首先是url,如果是外部JS中的ajax请求,那么url是相对路径。如果是JSP页面中的请求,url是全路径。需要用到request.getContextPath.
2.其次是type,get/post,这个很少出问题。
3.重要的是ContentType,设置发送请求的提交数据的方式,有text/html、application/json、还有mutiple等。不是所有的数据请求都可以随便的。
4.再更重要的就是检查好自己要传输的data数据了。
4.1: 首先data数据类型要和后台接收的类型相匹配,不然会报媒体格式不一致的Http 415错误
4.2:其次是当你的表单数据传输时,如果后台是用对象接收,那么要判断传输的内容(input select等)是否能正确的装填到对象中。如果不能装填,会报http 400,这个是很难找出来的问题的。
4.3:再就是当你的表单要转为json数据传输时,可以先序列化为json对象再传输,serializeArray();、如果想转换成JSON字符串传输的话,则还需要使用JSON.stringify();
JSON.parse(jsonStr); 字符串转对象
JSON.stringify(jsonObj);对象转字符串
4.4:再一个耳熟能详的就是async属性了。(默认的true是异步),false是同步。
4.5:还有就是很多人容易搞混的,dataType,这个是指定的返回数据的类型,和你传输数据的类型半毛钱都没有谢谢! 明明我http400错误,别人叫我把dataType改为json,我日了狗的心都有了好吗?!
注:400最常见的应该是参数类型和对应web层po对应属性的类型不匹配,可以去掉一部分参数进行测试定位问题