Http常见的状态码、重定向和转发的区别

一、Http常见的状态码:
2**(成功) 操作被成功接受并处理

200 OK 请求成功,一般用于Get和Post请求。

3**(重定向) 需要进一步操作完成请求,结合头部信息location字段,指定重定向地址

307 临时重定向

4** (客户端错误)请求包含语法错误或无法完成的请求

400 客户端请求语法错误,服务端无法理解请求的语法。
403 服务端拒绝请求
404 服务端无法根据客户端的请求找到资源(网页或后台服务)

5**(服务器错误)服务器在请求过程中发生了错误

500 服务器内部错误,无法完成请求。

二、重定向和转发:
1、实现原理:
  • 重定向:返回3**状态码+location响应头;浏览器跳转到location所在的URL。
  • 转发:当次Http请求,直接获取要转发的URL地址并返回。
重定向是在客户端进行跳转。

在这里插入图片描述

转发是在服务端进行跳转。

在这里插入图片描述

2、跳转次数:

重定向跳转2次;转发跳转一次。

3、URL是否会改变

重定向URL会改变;跳转URL不会改变。

4、请求数据是否会丢失

请求重定向的URL时,会丢失第一次的请求数据;
转发URL,或携带第一次请求的数据,不会丢失。

5、重定向和转发使用的方法。

重定向:

//request.getContextPath()获取项目部署名,/main.html为服务路径
resp.getRedirect(request.getContextPath()+"/main.html");

转发:

req.getRequestDispatchar("/error.html").forward(req,resp);
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值