• HTTP状态码301和302的区别


    简介

    HTTP状态码中,3XX表示重定向,指网页发生了转移,重定向到目标地址中。

    301:表示永久性转移 (Permanently Moved)

    302:表示临时性转移(Temporarily Moved)

    说明

    301和302都是将URL地址转移到新的地址中,这是二者的共同点。不同点是:

    301适合永久重定向:

            常见场景是使用域名跳转。浏览器发出原始请求后重定向到新地址,浏览器会缓存这个请求,等下次再次访问原始地址时会直接请求到新地址去。

    302适合临时跳转:

            可用于临时的、动态的地址跳转,每次请求原地址都会重新重定向到目标地址。应用场景:页面单点登录。

    301和302应用实践

    功能:门户系统使用CAS统一认证系统。在门户上集成第三方应用后点击应用会携带包含用户信息的ticket参数。如果请求中没有ticket参数,则需要重定向到CAS的登录页面。

    1、时序图理解

         2、针对第1步接收ticket参数

    3、 区别

    CAS点击应用(即API接口)默认是没有ticket的(可能和客户的CAS服务器有关),因此会重定向到/cas/login登录页面。关键在于是301还是302重定向。

    当使用302时,API接口会有2次调用记录。点击应用是第1次不携带ticket请求 API接口被重定向到CAS登录页面;随后CAS携带ticket第2次请求API进入右侧条件

    当使用301时,API接口只有在浏览器第一次调用时才会有2次调用记录(同302),之后调用时浏览器已经默认把CAS登录页面作为API接口进行缓存,调用API时默认调用CAS登录页面,因此API接口只有一次 携带着ticket的请求记录

     

       

  • 相关阅读:
    Si24R03—低功耗 SOC 芯片(集成RISC-V内核+2.4GHz无线收发器)
    List的介绍
    redis常用命令
    x64dbg 2022 最新版编译方法
    LED电子屏幕可以通过什么方式进行人屏互动
    LeetCode //C - 33. Search in Rotated Sorted Array
    LeetCode-解数独(C++)
    Android - Context
    聊聊ChatGLM-6B医疗数据微调
    基于Java+vue前后端分离高校社团管理系统设计实现(源码+lw+部署文档+讲解等)
  • 原文地址:https://blog.csdn.net/hykkingking/article/details/127860954