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
  • 相关阅读:
    EntityFrameworkCore 试用
    学习Core 本机开发调试 (环境)
    非代码的异常
    .net 下判断中英文字符串长度
    LingQ 的Distinct使用方法
    Excel导入导出各种方式分析
    VS使用的快捷方式
    数据库事物
    web开发常用正则表达式
    特殊字符转义
  • 原文地址:https://www.cnblogs.com/zuochanzi/p/14472550.html
Copyright © 2011-2022 走看看