`
473687880
  • 浏览: 535776 次
文章分类
社区版块
存档分类
最新评论

完整的HTTP通信步骤

 
阅读更多
HTTP通信机制是在一次完整的HTTP通信过程中,Web浏览器与Web服务器之间将完成下列7个步骤:
1、建立TCP连接
在HTTP工作开始之前,Web浏览器首先要通过网络与Web服务器建立连接,该连接是通过TCP来完成的,该协议与IP协议共同构建Internet,即著名的TCP/IP协议族,因此Internet又被称作是TCP/IP网络。HTTP是比TCP更高层次的应用层协议,根据规则,只有低层协议建立之后才能,才能进行更层协议的连接,因此,首先要建立TCP连接,一般TCP连接的端口号是80
-
2、Web浏览器向Web服务器发送请求命令
一旦建立了TCP连接,Web浏览器就会向Web服务器发送请求命令
例如:GET/sample/hello.jsp HTTP/1.1
-
3、Web浏览器发送请求头信息
浏览器发送其请求命令之后,还要以头信息的形式向Web服务器发送一些别的信息,之后浏览器发送了一空白行来通知服务器,它已经结束了该头信息的发送。
-
4、Web服务器应答
客户机向服务器发出请求后,服务器会客户机回送应答,
HTTP/1.1 200 OK
应答的第一部分是协议的版本号和应答状态码
-
5、Web服务器发送应答头信息
正如客户端会随同请求发送关于自身的信息一样,服务器也会随同应答向用户发送关于它自己的数据及被请求的文档。
-
6、Web服务器向浏览器发送数据
Web服务器向浏览器发送头信息后,它会发送一个空白行来表示头信息的发送到此为结束,接着,它就以Content-Type应答头信息所描述的格式发送用户所请求的实际数据
-
7、Web服务器关闭TCP连接
一般情况下,一旦Web服务器向浏览器发送了请求数据,它就要关闭TCP连接,然后如果浏览器或者服务器在其头信息加入了这行代码
Connection:keep-alive
TCP连接在发送后将仍然保持打开状态,于是,浏览器可以继续通过相同的连接发送请求。保持连接节省了为每个请求建立新连接所需的时间,还节约了网络带宽。
分享到:
评论

相关推荐

    CodeSys如何实现HTTP通信

    CodeSys是一款基于IEC 61131-3标准的...理解并掌握在CodeSys中使用HTTP通信的步骤和注意事项,对于实现自动化设备与远程服务器的高效交互至关重要。通过学习和实践,开发者能够构建出更智能、更互联的自动化解决方案。

    HTTP通信模拟工具

    模拟HTTP通信的关键步骤包括: 1. 初始化:首先,需要初始化MFC的Internet会话。这通常涉及到设置超时值、错误处理模式以及代理服务器信息等。 2. 创建会话:通过调用CInternetSession的构造函数创建一个会话对象...

    android的Http通信

    使用`HttpURLConnection`进行HTTP通信涉及以下几个步骤: - 打开网络连接:通过`java.net.URL`类的`openConnection()`方法获取`HttpURLConnection`对象。 - 设置请求方法:如GET、POST等,通过`setRequestMethod...

    Http通信demo

    使用HttpClient进行HTTP通信通常包括以下几个步骤: 1. 创建HttpClient实例,设置配置参数。 2. 创建HttpGet或HttpPost对象,设置请求URL。 3. 添加请求头或请求体,如必要。 4. 执行请求,通过HttpClient的execute...

    HTTP 通信测试或者JAVAServlet测试

    总的来说,HTTP通信测试和Java Servlet测试是确保Web应用稳定运行的重要步骤,它们涉及到客户端与服务器之间的数据交换,以及服务器端的逻辑处理。理解这些概念并熟练掌握测试方法,对于任何Web开发者来说都是至关...

    Labview创建webservice与C#进行简单的http通信(post,get)

    本篇将深入探讨如何使用LabVIEW创建Web服务并结合C#进行HTTP通信,特别是POST和GET请求的实现。LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一种图形化编程环境,广泛应用于工程、科学和教育...

    Android学习笔记——Http通信 源码

    在Android开发中,网络通信是不可或缺的一部分,而HTTP通信是其中最基础且广泛使用的协议之一。这篇"Android学习笔记——Http通信 源码"主要探讨了如何在Android应用中利用WebView控件加载网页以及使用ImageView控件...

    HTTP通信协议 工作原理详解

    HTTP(超文本传输协议)是互联网上...总结来说,HTTP通信协议的工作原理涉及域名解析、TCP连接建立、HTTP请求发送、服务器处理和响应、资源加载以及连接关闭。理解这一过程对于开发Web应用程序和优化网络性能至关重要。

    Android&Tomcat服务器Http协议通信

    2. HttpClient(已废弃):Apache HttpClient库是早期Android开发者常用的HTTP通信库,功能强大,API丰富,但自Android 6.0(API级别23)起已被弃用。 3. OkHttp:目前推荐的Android HTTP库,性能优异,易用性高,...

    j2me http通信demo

    不过,你可以期望在该演示项目中找到以上提到的HTTP通信实现,包括连接设置、请求方法、数据传输以及响应处理等关键步骤。 总的来说,J2ME HTTP通信涉及到了网络连接、请求构造、数据交换和响应解析等多个环节,是...

    原生Socket 实现HTTP、HTTPS通信

    Java中的`java.net.Socket`类可以用于创建TCP连接,进而实现HTTP通信。例如,在`ExampleUnitTest.java`中可能包含了一个测试HTTP请求的单元测试用例,它通过创建Socket连接到指定的HTTP服务器,发送HTTP请求报文,并...

    Android网络编程之Http通信

    Android网络编程是移动应用开发中的一个重要组成部分,而Http通信则是网络编程中最常用的协议之一。在Android平台上,我们通常会使用HttpURLConnection或者第三方库如Apache HttpClient和OkHttp等进行Http通信。 1....

    C语言http客户端通信实现

    在C语言中实现HTTP客户端通信,主要涉及以下几个步骤: 1. **建立网络连接**:使用socket编程接口创建一个套接字,并通过connect函数与服务器建立TCP连接。TCP(传输控制协议)是一种面向连接的、可靠的传输协议,...

    安卓和客户端http通信demo

    在Android应用开发中,HTTP通信是常见的数据交互方式,它允许客户端(比如Android设备)与服务器之间进行数据的发送和接收。本示例是一个简单的Android客户端通过HTTP协议与服务器进行通信的Demo,主要涉及到以下几...

    spring+mina实现http接口服务端通信客户端

    6. **测试与优化**:完成以上步骤后,进行单元测试和集成测试,确保HTTP接口和Mina通信的正确性。根据性能需求,可以调整Mina的配置,如缓冲区大小、线程池大小等,以优化通信效率。 通过这种方式,你可以构建一个...

    golang tcp http搭建与通信

    在本文中,我们将深入探讨如何使用Golang搭建TCP和HTTP服务器以及实现它们之间的通信。Golang,也称为Go语言,是Google开发的一种静态类型的、编译型的、并发型的、垃圾回收的、C风格的编程语言。它以其简洁的语法、...

    [c#源码]通过TCP http 通信发送大文件.rar

    HTTP通信则更为简单,通常基于请求-响应模型。C#中的HttpClient类可以方便地处理HTTP请求和响应。发送大文件时,可以使用MultipartFormDataContent或者FileStreamContent,分块上传以避免内存压力。同时,HTTP/1.1...

    android HTTP通信简单Demo

    在这个教程中,我们将深入理解Android HTTP通信的基本概念、步骤以及相关库的使用。 1. **HTTP基础**: - HTTP(超文本传输协议)是互联网上应用最广泛的一种网络协议,用于从Web服务器传输超文本到本地浏览器。 ...

    通信猫(COMNET)可以进行网络调试,TCP客户端,TCP服务器,UDP,MQTT,HTTP客户端,网络抓包,端口扫描等

    这款工具提供了多种功能,包括TCP客户端、TCP服务器、UDP通信、MQTT协议调试、HTTP客户端、网络抓包以及端口扫描等。下面将详细阐述这些功能及其重要性。 1. TCP客户端与TCP服务器:TCP(传输控制协议)是互联网上...

    labview HTTP POST调用通信

    LabVIEW(Laboratory Virtual ...通过上述步骤,你可以在LabVIEW中实现HTTP POST调用通信,与Web服务进行数据交换和交互。记得在实际应用中,还要考虑服务器的限制、网络条件等因素,以确保通信的稳定性和可靠性。

Global site tag (gtag.js) - Google Analytics