zoukankan      html  css  js  c++  java
  • ajax与重定向302 ,网页已下载,无法跳转问题

    网上有不少说法ajax的请求url浏览器不会重定向的说法是片面的,正常是这样的:
    
    当服务器将302响应发给浏览器时,浏览器并不是直接进行ajax回调处理,而是先执行302重定向——从Response Headers中读取Location信息,然后向Location中的Url发出请求,在收到这个请求的响应后才会进行ajax回调处理。大致流程如下:
    
    ajax -> browser -> server -> 302 -> browser(redirect) -> server -> browser -> ajax callback
    
     所以说不是ajax请求浏览器没法重定向,而是ajax无法控制控制重定向。

    如果碰到前后端分离的项目页面,此等页面一般是ajax请求,如果此时做权限拦截, 重定向是二次请求服务器的,也就是链接请求页面时,服务器重定向,浏览器收到重定向地址,再次请求此重定向的地址,实际操作中此时服务返回重定向302 , 浏览器收到这个地址,按这个地址发出请求, 然后服务器此时如果---------未完, 碰到一个例子, 拦截时返回的字符串不用重定向, 朋友那边 请求页面的ajax 竟然收到了收到了信息,实际应该未加载才对,因为非在本机操作.固有空再补充吧

    技术交流qq群:143280841
  • 相关阅读:
    Rancher安装
    JDK8日期时间对象
    String经典面试题
    String
    单例模式
    多线程
    接口
    代码块
    内存吞金兽(Elasticsearch)的那些事儿 -- 常见问题痛点及解决方案
    内存吞金兽(Elasticsearch)的那些事儿 -- 写入&检索原理
  • 原文地址:https://www.cnblogs.com/zuochanzi/p/14472550.html
Copyright © 2011-2022 走看看