zoukankan      html  css  js  c++  java
  • 跳转和重定向的区别


    跳转
        1.使用request完成
        2.跳转的本质是在服务器内部把请求和响应进行转发,转发给下一个资源
        3.如果request中有数据,在跳转到的每一个资源中都可以拿到一个数据(从开始到结束只有一个request对象)
        4.由于服务器跳转是把请求和响应在服务器内部中来回转发,所以浏览器的地址栏中的地址是不受影响的,所以始终还是第一次发出请求的地址
        5.在设置跳转的资源地址的时候,路径的前面一般要加上/
            例如 String path = "/a.html";

    重定向
        1.使用response完成
        2.重定向的本质是把资源路径通过响应返回给浏览器(通过响应头信息),让浏览器向这个新地址发送一个新请求
        3.如果request中有数据,重定向后在新的资源中是拿不到这个数据的(重定向会发一个全新的请求,但是数据在上一个老的请求中)
        4.由于重定向让浏览器发出新的请求,所以浏览器地址栏中的地址会变成新请求的地址
        5.在设置重定向的资源地址的时候,路径的前面一般不加/
            例如 String path = "a.html";
            但是如果一定要加/的话,那么还需要额外加上一个项目名
            例如 String path = "/web_test/a.html";
            同时也可以动态获取项目:req.getContextPath()
                String path = req.getContextPath()+"/a.html";


  • 相关阅读:
    [BZOJ2738]矩阵乘法
    [BZOJ2084][Poi2010]Antisymmetry
    [BZOJ2095][Poi2010]Bridges
    [BZOJ1294][SCOI2009]围豆豆Bean
    [AtCoderContest075F]Mirrored
    [AtCoderContest015D]A or...or B Problem
    [UOJ#276]【清华集训2016】汽水
    忠诚的皇家守卫团——中间件
    Django(五):视图和路由系统
    Django(四):ORM
  • 原文地址:https://www.cnblogs.com/yxj808/p/12017844.html
Copyright © 2011-2022 走看看