• 极客专栏正式上线!欢迎访问 https://www.jikewenku.com/topic.html
  • 极客专栏正式上线!欢迎访问 https://www.jikewenku.com/topic.html

Java基础复习笔记之http协议

极客笔记 巷子的童年 3周前 (03-02) 31次浏览 已收录 0个评论 扫描二维码
常见端口
TCP 21端口:FTP 文件传输服务
TCP 25端口:SMTP 简单邮件传输服务
UDP 53端口:DNS 域名解析服务
TCP 80端口:HTTP 超文本传输服务
TCP 110端口:POP3 “邮局协议版本3”使用的端口
TCP 443端口:HTTPS 加密的超文本传输服务
Http 状态码含义
200 OK 服务器已成功处理了请求并提供了请求的网页。
202 Accepted 已经接受请求,但处理尚未完成。
204 No Content 没有新文档,浏览器应该继续显示原来的文档。
206 Partial Content 客户端进行了范围请求。响应报文中由 Content-Range 指定实体
内容的范围。实现断点续传。
301 Moved Permanently 永久性重定向。请求的网页已永久移动到新位置。
302(或 307) Moved Temporatily 临时性重定向。请求的网页临时移动到新位置。
304 Not Modified 未修改。自从上次请求后,请求的内容未修改过。
401 Unauthorized 客户试图未经授权访问受密码保护的页面。应答中会包含一个
WWW-Authenticate 头,浏览器据此显示用户名字/密码对话框,然后在填写合适的
Authorization 头后再次发出请求。
403 Forbidden 服务器拒绝请求。
404 Not Found 服务器上不存在客户机所请求的资源。
500 Internal Server Error 服务器遇到一个错误,使其无法为请求提供服务。
Http1.1 和 Http1.0 的区别
1.HTTP1.1支持长连接请求的流水线处理,并且默认使用长连接。
HTTP/1.1 默认使用持久连接,只要客户端服务端任意一端没有明确提出断开 TCP 连接,就一直保持连接,在同一个 TCP 连接下,可以发送多次 HTTP 请求。同时,默认采用流水线的方式发送请求,即客户端每遇到一个对象引用就立即发出一个请求,而不必等到收到前一个响应之后才能发出下一个请求。
在 HTTP/1.0 中,默认使用的是短连接,HTTP1.0 需要在 request中增加”Connection:keep-alive“ header 才能够支持长连接,从 HTTP/1.1 起,默认使用长连接。
2. 分块传输数据
HTTP/1.1 引入了被称为分块(chunked)的传输方法。该方法使发送方能将消息实体分割为任意大小的组块(chunk),并单独地发送他们。在每个组块前,加上了该组块的长度,使接收方可确保自己能够完整地接收到这个组块。更重要的是,在最末尾的地方,发送方生成了长度为零的组块,接收方可据此判断整条消息都已安全地传输完毕。这样也避免了在服务器端占用大量的缓存
3.状态码 100 Continue
HTTP/1.1 加入了一个新的状态码 100 Continue,用于客户端在发送 POST 数据给服务器前,征询服务器的情况,看服务器是否处理 POST 的数据
常用的 HTTP 方法
GET:发送一个请求来取得服务器上的某一资源。资源通过一组 HTTP 头和呈现数据(如 HTML 文本,或者图片或者视频等)返回给客户端;
HEAD: 本质上同GET,区别在于 HEAD 不含有呈现数据,而仅仅是HTTP 头信息;
PUT:PUT 和 POST 极为相似,都是向服务器发送数据,但它们之间有一个重要区别,PUT 通常指定了资源的存放位置,而 POST 则没有,POST 的数据存放位置由服务器自己决定。
DELETE:删除某一个资源。
POST:向服务器提交数据。用途广泛,几乎所有的提交操作都是靠它完成。
OPTIONS:它用于获取当前 URL 所支持的方法。若请求成功,则它会在 HTTP 头中包含一个名为“Allow”的头,值是所支持的方法,如“GET, POST”。
TRACE:请求服务器回送收到的请求信息,主要用于测试和诊断,所以是安全的。
为什么 HTTP 是无状态的?如何保持状态(会话跟踪技术、状态管理)?
HTTP 无状态:无状态是指协议对于事务处理没有记忆能力,不能保存每次客户端提交的信息,即当服务器返回应答之后,这次事务的所有信息就都丢掉了。如果用户发来一个新的请求,服务器也无法知道它是否与上次的请求有联系。
有四种会话跟踪技术:
1.COOKIE
2.Session
3.URL 重写:URL地址重写是对客户端不支持Cookie的解决方案。URL地址重写的原理是将该用户Session的id信息重写 到URL地址中。服务器能够解析重写后的URL获取Session的id。这样即使客户端不支持Cookie,也可以使用Session来记录用户状态。
4.作为隐藏域嵌入 HTML 表单中(隐藏表单域)使用隐藏域提交sessionid。

丨极客文库, 版权所有丨如未注明 , 均为原创丨
本网站采用知识共享署名-非商业性使用-相同方式共享 3.0 中国大陆许可协议进行授权
转载请注明原文链接:Java基础复习笔记之http协议
喜欢 (0)
[247507792@qq.com]
分享 (0)

您必须 登录 才能发表评论!

  • 精品技术教程
  • 编程资源分享
  • 问答交流社区
  • 极客文库知识库

客服QQ


QQ:2248886839


工作时间:09:00-23:00