一、概念

定义

HTTP(超文本传输协议)是TCP/IP协议的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的过程。

HTTP协议用于定义客户端与web服务器通迅的格式。

版本

HTTP1.0协议:客户端与web服务器建立连接后,只能获得一个web资源。
HTTP1.1协议:允许客户端与web服务器建立连接后,在一个连接上获取多个web资源。

二、HTTP请求

定义

客户端连上服务器后,向服务器请求某个web资源,称之为客户端向服务器发送了一个HTTP请求。

结构

一个完整的HTTP请求包括如下内容:一个请求行、若干消息头、以及实体内容

请求行

请求方式:GET(默认)、POST、HEAD、OPTIONS、DELETE、TRACE、PUT

GET(默认):多个数据之间以&进行分隔,数据容量通常不能超过1K。例如:GET /mail/1.html?name=abc&password=xyz HTTP/1.1

POST:可以在请求的实体内容中向服务器发送数据,传送的数据量无限制。

消息头

  accept:支持的数据类型
  Accept-Charset: 支持哪种字符集
  Accept-Encoding:支持的压缩格式
  Accept-Language:支持的语言环境
  Host:想访问哪台主机
  If-Modified-Since: 缓存数据的时间
  Referer:客户机是哪个页面来的  防盗链
  Connection:请求完后是断开链接还是何持链接

三、HTTP响应

定义

一个HTTP响应代表服务器向客户端回送的数据

结构

一个完整的HTTP请求包括如下内容:一个状态行、若干消息头、以及实体内容

状态行

状态行格式: HTTP版本号 状态码 原因叙述<CRLF>
举例:HTTP/1.1 200 OK
状态码用于表示服务器对请求的处理结果,它是一个三位的十进制数。响应状态码分为5类,如下所示:
 

响应头

  Location: 跳到哪里
  Server:服务器的型号
  Content-Encoding:数据的压缩格式
  Content-Length: 回送数据的长度
  Content-Language: 语言环境
  Content-Type:回送数据的类型
  Refresh:定时刷新
  Content-Disposition: 以下载方式打数据
  Transfer-Encoding:数据是以分块方式回送的
  Expires: 缓存存在时间,-1  控制浏览器不要缓存
  Cache-Control: 缓存控制(同时存在会覆盖Expires,"no-cache"为不缓存)
  Pragma: 缓存控制("no-cache"为不缓存)

转载于:https://www.cnblogs.com/riches/p/11365127.html

Java Web学习(四)http协议相关推荐

  1. java web学习笔记(持续更新)

    java web学习笔记 一.Java Web简介 二.认识Servlet 1.什么是Servlet? 2.请求路径 3.tomcat 4.Servlet的使用 三.Servlet简单应用 1.创建S ...

  2. Java Web 学习路线

    Java Web 学习路线 实际上,如果时间安排合理的话,大概需要六个月左右,有些基础好,自学能力强的朋友,甚至在四个月左右就开始找工作了. 大三的时候,我萌生了放弃本专业的念头,断断续续学 Java ...

  3. Java Web 学习路线(2018)

    实际上,如果时间安排合理的话,大概需要六个月左右,有些基础好,自学能力强的朋友,甚至在四个月左右就开始找工作了. 大三的时候,我萌生了放弃本专业的念头,断断续续学 Java Web 累计一年半左右,总 ...

  4. java web学习项目20套源码完整版

    java web学习项目20套源码完整版 自己收集的各行各业的都有,这一套源码吃遍所有作业项目! 1.BBS论坛系统(jsp+sql) 2.ERP管理系统(jsp+servlet) 3.OA办公自动化 ...

  5. 2019年Java Web学习笔记目录

    Java Web学习笔记目录 1.Java Web学习笔记01:动态网站初体验 2.Java Web学习笔记02:在Intellij里创建Web项目 3.Java Web学习笔记03:JSP元素 4. ...

  6. java web 学习

    课程目标: HTML .CSS.JAVASCRIPT.Servlet .jsp.Ajax   一.HTML    1.了解web的标准   W3C组织:是国际互联网标准指定组织.网络协议分为:底层的网 ...

  7. java web学习笔记-jsp篇

    转载自:http://www.cnblogs.com/happyfans/archive/2015/03/17/4343571.html 1.java web简介 1.1静态页面与动态页面   表现形 ...

  8. Java Web 学习与总结(一)Servlet基础

    配置环境:https://www.cnblogs.com/qq965921539/p/9821374.html 简介: Servlet是Sun公司提供的一种实现动态网页的解决方案,在制定J2EE时引入 ...

  9. Java Web学习总结(10)——Session详解

    摘要:虽然session机制在web应用程序中被采用已经很长时间了,但是仍然有很多人不清楚session机制的本质,以至不能正确的应用这一技术.本文将详细讨论session的工作机制并且对在Java ...

  10. Java web学习文档

    Java web 一,第一章 1,tomcat的下载及配置部署 学习本章内容需要具备以下知识点 java基础知识 面向对象oop思想 java进阶 数据库 前端网页技术(html/css/js/jqu ...

最新文章

  1. C语言关闭文件总是错误,C语言程序错误,不能正常读写文件,求解啊
  2. 使用OPATCH_DEBUG环境变量调试Opatch工具
  3. centos7 mysql安装
  4. Period_JAVA
  5. Newtonsoft.Json 的序列化与反序列化
  6. Class java用法,java中Class的三种实例化
  7. Linux内核系统调用处理过程
  8. java实现验证码3秒刷新一次
  9. mysql 锁 代码_MySQL中的锁实例
  10. 一文看懂LR寄存器及 BX LR 指令的两种用途
  11. CentOS 6.5 yum安装配置lnmp服务器(Nginx+PHP+MySQL)
  12. liniux备忘录-磁盘配额与进阶文件系统管理
  13. Delphi循环语句 -For
  14. json接口(使用,以及自定义)
  15. java操作mysql视图_MySQL使用视图
  16. android手机获取qq闪照的方法,QQ闪照怎么保存 闪照保存到手机的方法教程
  17. vue 过滤器 首字母大写
  18. Java SE基础知识详解第[12]期—集合(Set、Collections、Map、集合嵌套)
  19. 深信服python二面面什么_深信服 python开发 北京 笔试一面二面 面经
  20. linux rz 快捷上传包或文件

热门文章

  1. 【算法】Kruskal算法(解决最小生成树问题) 含代码实现
  2. 每天一道LeetCode-----找到有多少个组合加起来和是n,每个组合的数字只能是1或者2
  3. imageloader 的 java.security.cert.CertPathValidatorException
  4. redis设置键的生存时间或过期时间
  5. go 使用sarama写入kafka数据时间戳问题
  6. 华为鸿蒙os什么时候应用上线,华为 HarmonyOS :即日起,全新上线鸿蒙 100 问
  7. 去重复java_去重复数据(JAVA)
  8. c++11- Alias Template
  9. linux下搭建ntp服务,Linux 下快速搭建ntp 时间同步服务器
  10. Java NIO、NIO.2学习笔记