>>分享Java Web开发技术,并且对孙卫琴的《Tomcat与Java Web开发技术详解》提供技术支持 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 27808 个阅读者 刷新本主题
 * 贴子主题:  HTTP 请求和响应结果的数据格式 回复文章 点赞(0)  收藏  
作者:flybird    发表时间:2020-01-30 14:50:18     消息  查看  搜索  好友  邮件  复制  引用

  

HTTP 请求和响应结果的数据格式

HTTP是基于客户端/服务端(C/S)的架构模型,通过一个可靠的链接来交换信息,是一个无状态的请求/响应协议。

一个HTTP"客户端"是一个应用程序(Web浏览器或其他任何客户端),通过连接到服务器达到向服务器发送一个或多个HTTP的请求的目的。

一个HTTP"服务器"同样也是一个应用程序(通常是一个Web服务,如Apache Web服务器或IIS服务器等),通过接收客户端的请求并向客户端发送HTTP响应数据。

HTTP使用统一资源标识符(Uniform Resource Identifiers, URI)来传输数据和建立连接。

一旦建立连接后,数据消息就通过类似Internet邮件所使用的格式[RFC5322]和多用途Internet邮件扩展(MIME)[RFC2045]来传送。

客户端请求消息

客户端发送一个HTTP请求到服务器的请求消息包括以下格式:请求行(request line)、请求头部(header)、空行和请求数据四个部分组成,下图给出了请求报文的一般格式。

点击在新窗口中浏览原图
CTRL+鼠标滚轮放大或缩小

服务器响应消息

HTTP响应也由四个部分组成,分别是:状态行、消息报头、空行和响应正文。

点击在新窗口中浏览原图
CTRL+鼠标滚轮放大或缩小    

实例

下面实例是一点典型的使用GET来传递数据的实例:

客户端请求:

GET /hello.txt HTTP/1.1

User-Agent: curl/7.16.3 libcurl/7.16.3 OpenSSL/0.9.7l zlib/1.2.3

Host: www.javathinker.net

Accept-Language: en, mi

服务端响应:

HTTP/1.1 200 OK

Date: Mon, 27 Jul 2009 12:28:53 GMT

Server: Apache

Last-Modified: Wed, 22 Jul 2009 19:15:56 GMT

ETag: "34aa387-d-1568eb00"

Accept-Ranges: bytes

Content-Length: 51

Vary: Accept-Encoding

Content-Type: text/plain

输出结果:

Hello World! My payload includes a trailing CRLF.

  




程序猿的技术大观园:www.javathinker.net



[这个贴子最后由 flybird 在 2020-01-31 16:28:40 重新编辑]
  Java面向对象编程-->Swing组件(下)
  JavaWeb开发-->Web运作原理(Ⅰ)
  JSP与Hibernate开发-->立即检索和延迟检索策略
  Java网络编程-->通过JavaMail API收发邮件
  精通Spring-->计算属性和数据监听
  Vue3开发-->计算属性和数据监听
  Servlet中读JSON请求数据和写JSON响应数据
  面试官问我:一个 TCP 连接可以发多少个 HTTP 请求?
  HTTP 请求方式
  javaWeb自定义标签用法实例详解
  用过滤器对返回的响应结果进行修改
  设置和获取Cookie
  解决HttpServletRequest的输入流只能读取一次的问题
  配置简单的嵌入式tomcat和jetty
  关于JSTL标签库版本的升级和下载
  web.xml中配置出错页面,处理异常
  关于把JSP文件放在Web应用的WEB-INF目录下的优缺点的探讨
  Tomcat的各个版本比较
  Java EE改名Jakarta EE
  用Maven部署war包到远程Tomcat服务器
  ServletConfig和ServletContext详解(转移自: 《Tomcat与Java...
  更多...
 IPIP: 已设置保密
楼主      
1页 1条记录 当前第1
发表一个新主题 开启一个新投票 回复文章


中文版权所有: JavaThinker技术网站 Copyright 2016-2026 沪ICP备16029593号-2
荟萃Java程序员智慧的结晶,分享交流Java前沿技术。  联系我们
如有技术文章涉及侵权,请与本站管理员联系。