Jquery ajax 请求容易出现的问题http415,http400

来源:互联网 发布:windows设置ntp服务器 编辑:程序博客网 时间:2024/05/16 09:46

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,我日了狗的心都有了好吗?!

2 0