作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
HTTP 端点是否应该响应来自特定客户端的请求以便接收它们?
如果在代理后面的集群处理的请求或使用 NIO 处理的请求中一个请求比另一个请求完成得更快的情况下没有意义怎么办?
是否有一种标准方法可以将唯一 ID 与每个 http 请求相关联以与响应相关联?这在 http componenets httpclient 或 curl 等客户端中是如何处理的?
问题归结为以下情况:
假设,我正在从服务器下载文件,但请求尚未完成。客户端是否能够在同一个保持连接上完成其他请求?
最佳答案
无论何时打开 TCP 连接,都会通过源端口和目标端口以及 IP 地址来识别连接。因此,如果我在目标端口 80(HTTP 的默认端口)上连接到 www.google.com,我需要一个操作系统将生成的免费源端口。
然后将 Web 服务器的回复发送到源端口(和 IP)。这也是 NAT 的工作方式,记住哪个源端口属于哪个内部 IP 地址(传入连接反之亦然)。
至于您的编辑:不,单个 http 连接可以同时执行一个命令(GET/POST/等)。如果您在从先前发出的命令中检索数据时发送另一个命令,则结果可能因客户端和服务器实现而异。我猜想,比如Apache,在第一个请求的数据发送完之后,会把第二个请求的结果发送出去。
关于http - http 客户端如何将 http 响应与请求(使用 Netty)或一般情况相关联?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7306497/
我是一名优秀的程序员,十分优秀!