Javaweb-01-HTTP

动态web访问

客户端通过浏览器发起http请求,服务器端接收请求通过web服务器插件判断该请求是静态还是动态的

  • 如果是静态资源,则直接将请求转给web服务器,之后由web服务器从文件系统中取出内容,返回给客户端解析
  • 如果是动态资源,则将请求先转给web容器,web容器连接数据库,从数据库中取出数据动态拼凑页面展示内容,然后交给服务器,之后通过web服务器将内容发送回客户端解析

HTTP

基本简介
超文本传输协议,是一个TCP/IP层的应用协议,版本有1.0和1.1
http1.0: 与服务器连接后,只能获取一个web资源;
http1.1: 与服务器连接后,能获取多个Web资源。

HTTP请求

一个请求行、若干消息头以及实体内容

请求方式

请求方式有get、post、head、put、options、delete、trace

GET请求和POST请求的区别
GET请求

  • 请求参数会在浏览器的地址栏中显示,所以不安全;
  • 请求参数长度限制长度在1KB之内;
  • GET请求没有请求体,无法通过request.setCharacterEncoding()来设置参数的编码;

POST请求

  • 请求参数不会显示浏览器的地址栏,相对安全;
  • 请求参数长度没有限制;

浏览器地址栏直接输入:一定是GET请求;
超链接:一定是GET请求;
表单:可以是GET,也可以是POST,这取决与的method属性值

消息头
       accept:浏览器通过这个头告诉服务器,它所支持的数据类型
       Accept-Charset: 浏览器通过这个头告诉服务器,它支持哪种字符集
       Accept-Encoding:浏览器通过这个头告诉服务器,支持的压缩格式
       Host:浏览器通过这个头告诉服务器,想访问哪台主机
       If-Modified-Since: 浏览器通过这个头告诉服务器,缓存数据的时间
       Referer:浏览器通过这个头告诉服务器,客户机是哪个页面来的  防盗链
       Connection:浏览器通过这个头告诉服务器,请求完后是断开链接还是何持链接
HTTP响应

代表服务器向客户端回送的数据,包括一个状态行、若干消息头以及实体内容
状态行:

       100-199:表示成功接收请求,要求客户端继续提交下一次请求才能完成整个处理过程
       200-299:表示成功接收请求并已完成,常用200
       300-399:为完成请求,客户需进一步细化请求。例如,请求的资源已经移动一个新地址,常用302/307和304(重定向)
       400-499:客户端的请求有错误,常用404资源不存在    ,403服务器拒绝客户端请求,通常由于权限导致
       500-599:服务器端出现错误,常用500

响应头

       Location: 服务器通过这个头,来告诉浏览器跳到哪里
       Server:服务器通过这个头,告诉浏览器服务器的型号
       Content-Encoding:服务器通过这个头,告诉浏览器,数据的压缩格式
       Content-Type:服务器通过这个头,告诉浏览器回送数据的类型
       Refresh:服务器通过这个头,告诉浏览器定时刷新

在服务器端设置响应头来控制客户端浏览器的行为
设置location响应头,实现请求重定向

设置Content-Encoding响应头,告诉浏览器数据的压缩格式

设置content-type响应头,指定回送数据类型

设置refresh响应头,让浏览器定时刷新

设置content-disposition响应头,让浏览器下载文件

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值