前端ajax请求常见的状态码以及产生的原因

前端ajax请求常见的状态码以及产生的原因,第1张

注:以下状态码大部分都是自己项目中遇到的,现记录方便日后查看。

通常前后端使用ajax交互时,客户端向服务器发送请求时,然后服务器向我们返回状态码。 状态码就是告诉我们服务器响应的状态 ,由3位数字组成,其中第一位数字表示响应类别,响应类别从1到5分为五种 。

表示请求被服务器正常处理 ,最常见的就是这个

表示请求已成功处理,但是没有内容返回

也就是返回的响应报文中没有报文实体

一般用在只是客户端向服务器发送信息,而服务器不用向客户端返回什么信息的情况

永久重定向,表示请求的资源已经永久的搬到了其他位置 ,资源已经被分配了新的URI

临时重定向,表示请求的资源临时搬到了其他位置 ,请求的资源暂时被配到到了新的URI,和301很像,只不过资源是临时移动

表示请求资源存在另一个URI,应使用GET定向获取请求资源

303功能与302一样,区别只是303明确客户端应该使用GET访问

表示客户端自从上次请求后,请求的网页未修改过。服务器返回此响应时,不会返回网页内容。

304通常在IE浏览器下多次请求同一个地址出现的。

场景:删除表格其中一条数据后重新请求列表数据渲染表格,第二次请求时状态码是304导致被删除的数据还是出现在前端。

原因:IE浏览器下同一地址的ajax请求优先读取本地缓存数据

解决方法:在请求地址后面加上时间戳,保证每次请求的地址都不一样,这样浏览器就无法读取缓存。

表示请求报文存在语法错误或参数错误,服务器不理解 ,需要修改请求内容后再次发送

表示发送的请求需要有>

同志,既然有jquery为什么还要用原生的JS写这么多的代码呢?使用jqueryajax,如下,

先引入jquery文件后,

$ajax({

url: "ajaxashx",

type: "POST", //POST提交

contentType:"application/x->

这类问题一般是在外面声明个变量,然后ajax返回数据时改变这个变量值,再然后再在执行ajax请求的下面一个块{}根据这个变量值进行 *** 作。否则,ajax请求还来不及改变那个变量值,你的程序就执行到下面去了,所以你第一次执行后虽然你的值改变了,但是你的那个方法领先一步已经执行完毕,就会出现第一次不起作用,第二次之后才起作用的奇怪问题。

用alert就能执行就是因为alert延迟了执行时间,ajax请求来得及返回,你的变量也来得及赋新值。

    $ajax({

                    type: "GET",

                    url: ">                });  public void ProcessRequest(>  }

以上是aspnet 前后台的Ajax 跨域请求,如果你能看懂,你就可以解决你提出的问题了。

其他参考:>

这种情况有可能是数据类型不对。

一般情况下,前端ajax请求最好指定datatype,后端也需要约定某种格式,这样传输过程比较明确。

可以在控制台中检查数据是否正常返回,是否是直接返回网页。前端也可以对ajax内部进行调试看看是哪里的问题。

var jsonObject = eval("(" + jsonFormat + ")");//需要将JSON字符串的外面包装一层圆括号

alert(eval("{}"); // return undefined

alert(eval("({})");// return object[Object]

以上就是关于前端ajax请求常见的状态码以及产生的原因全部的内容,包括:前端ajax请求常见的状态码以及产生的原因、Ajax向服务器发送请求和接收返回的信息、ajax发送不出去请求信息,求解决!!!!!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9750900.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存