当前位置: 首页 > 知识库问答 >
问题:

客户端/服务器通信背后的HTTP协议是如何工作的?

孟安民
2023-03-14

HTTP是客户端-服务器通信,客户端总是发起连接,服务器做出响应。

在使用HTTP 1.1的客户端-服务器通信中,将执行以下步骤:1.客户端将请求发送到服务器。2.服务器将响应连同响应消息和状态代码一起发送给客户端。

我的问题是如何在协议中处理数据搬迁?我知道HTTP是无状态的,它也是要么一切要么什么都没有的机制,但是你如何证明这一点?服务器和客户端之间的握手是如何进行的?

例如:当服务器将响应发送回客户端时,如果发送了50%的数据,然后出现连接丢失,会发生什么情况...那么在这种情况下会发生什么?客户端是等待剩余的50%的消息,还是开始新的传输,服务器再次尝试发送100%的消息?(在同步通信中)

共有1个答案

仇征
2023-03-14

HTTP依赖于传输控制协议,因此在您的示例中,如果50%的数据正确发送,但其他数据包(是的,您应该考虑数据包)丢失,则将按照TCP协议中定义的规则再次发送数据

 类似资料:
  • 我在套接字上编写客户机-服务器应用程序,我有任务设计我自己的协议。客户端和服务器与XML通信。我使用JAXB库。客户机将XML完美地写入输出流。但我无法在服务器上读取它。你能演示一下如何正确接收客户端的数据吗? 还有我的线。 我应该在服务器上写什么来解析我得到的XML?我尝试解析InputStream。 现在它显示我异常。我改变马歇尔参数。

  • 我试图了解服务器-客户端网络如何为实时多人游戏工作。 假设我正在构建一个实时多人游戏,比如FPS。 如果玩家A向玩家B开枪,后端< code >服务器需要告诉玩家B他们被击中了。 我知道如何让玩家 A 告诉后端服务器他开了一枪,只是向服务器发送请求,但是如何让后端告诉玩家 他们被枪杀了? 玩家B是否必须每0.1秒检查一次后端以查看是否发生了什么事情,或者是否有更有效的方法?

  • 现在我的ServerSocket是这样的 一切正常,客户端连接,发送一些数据,服务器读取它,但我的问题是如何从我的服务器发送消息到所有的客户端?我目前保存客户端上的ArrayList,所以我可以只是循环,ArrayList打开一个作家和刷新它,但我想发送的数据,我得到我的ClientConnection类 我应该如何处理这个代码?在服务器类上完成的所有操作?或

  • 我有两个AWS EC2实例。服务器和客户端节点JS应用程序。 在本地,我的代码运行良好。但是在AWS,客户端会在一段时间后(例如30秒)关闭,没有任何警告/异常(由于某种原因,它无法找到并连接到服务器) 两个AWS实例都在运行:Windows Server 2016 Base。 两个AWS实例都有自己的服务器“AWS安全组”。只是为了确保我没有阻止两个安全组当前允许的任何东西:“所有流量到任何IP

  • 问题内容: 我正在构建一个小型聊天应用程序,其中客户端A希望通过服务器B将某些东西发送到客户端C。首先,这是解决问题的正确方法吗?我能够向服务器发送数据或从服务器接收数据,但仅限于客户端。例如,如果客户端A向服务器B发送数据而客户端C向服务器B发送数据,则我可以将数据发送回服务器A和C就像回显服务器一样。但是我想要的是将来自客户端A的数据通过服务器B转发到客户端C。 以下是服务器代码: 客户端代码

  • 我对spring boot和SSL还很陌生。我已经开发了一个SSL rest web服务器,它具有服务器密钥存储库、私钥和服务器CA,并且能够正确地处理相互X.509证书身份验证。我已经测试过,它可以与Postman和Python客户机一起工作HTTPS请求,并且所有工作都正常,服务器和客户机都可以成功地交换和验证对方的证书。 但我的情况有点不同, 我已经创建并连接了一个Postgresql数据库