zoukankan      html  css  js  c++  java
  • response重定向与request转发

    重定向与转发的区别:

      ⑴重定向:将一个请求处理完毕需要执行另一个请求,浏览器重新发送一个请求,重定向请求可以是任意请求。

        转发:在相应一个请求的时候,执行一部分之后需要转向另一个请求继续执行,比如servlet处理之后需要转向到jsp显示数据。

      ⑵运用:

      重定向:

    redirect.sendDirect(转发路径);//次路径可以是任意应用路径
    或者:
    response.setStatus(302);//向浏览器发送302状态码
    response.setHeader("location",重定向路径);//发送响应头Location为所给路径
    

      转发:

    request.getRequestDisparter(转发路径).forward(request,response);
    

      ⑶特点与区别

      转发的应用路径与当前应用共享request,重定向则不行。

      转发发生在服务端,重定向发生在浏览器。

      转发路径只能在当前应用内,重定向路径任意。

      ⑷图解

      

    由于转发和重定向的路径改变问题也导致了jsp中关于外部引用格式的问题,比如css路径的正确书写:

    因为重定向(以定向jsp文件为例)之后的路径是是定向后的文件的具体路径,而转发后的路径是没变的,仍然是设置转发的文件路径(以servlet向jsp转发),即servlet路径,详情如下图:

  • 相关阅读:
    6 开发工具IDE-pycharm
    5 循环控制
    react native 遇到的坑
    代码缩略图插件
    JEECMS-自定义标签[list]
    Jeecms自定义标签用法[单个内容]
    ReactNative环境搭建
    修改浏览器accept使支持@ResponseBody
    [转]MyEclipse for Spring2014破解
    js正则验证手机号
  • 原文地址:https://www.cnblogs.com/jamsbwo/p/4780527.html
Copyright © 2011-2022 走看看