使用 Java Socket 与 Apache HttpClient 进行异步实时 HTTP 数据收集
Using Java Socket vs. Apache HttpClient for asynchronous real-time HTTP data gathering
我与一位同事进行了快速交谈,他问我是否知道如何使用 Java 套接字在 Android 应用程序中从 HTTP 网络服务器收集实时数据。我只熟悉使用 Apache 的 HttpClient、HttpPost、HttpResponse,classes。
使用 java.socket class 与 org.apache.http.client.HttpClient class 进行实例化和 运行 多个 HTTP Get 实时请求的优势是什么数据?
这是我知道的,可能对你有帮助:
socket 只是提供给你两个Transport layer Protocol
TCP/UDP
。 HTTP
是 TCP
之上的 application layer protocol
。因此,如果您想与 HTTP
服务器通信,您必须使用 HTTP
协议与其通信。您可以自己重新发明轮子并使用 java.socket
或使用 HttpUrlConnection
或 org.apache.http.client.HttpClient
或 OKHTTP
来实现 HTTP
协议。他们都在后台使用套接字访问 Web 服务器。
What are the advantages of using the java.socket class vs.
org.apache.http.client.HttpClient class for instantiating and running
multiple HTTP Get requests for real-time data?
所以在我看来,使用 java.socket
与 HTTP server
通信没有任何优势,除非您需要的功能在任何这些库中都不存在。
我与一位同事进行了快速交谈,他问我是否知道如何使用 Java 套接字在 Android 应用程序中从 HTTP 网络服务器收集实时数据。我只熟悉使用 Apache 的 HttpClient、HttpPost、HttpResponse,classes。
使用 java.socket class 与 org.apache.http.client.HttpClient class 进行实例化和 运行 多个 HTTP Get 实时请求的优势是什么数据?
这是我知道的,可能对你有帮助:
socket 只是提供给你两个Transport layer Protocol
TCP/UDP
。 HTTP
是 TCP
之上的 application layer protocol
。因此,如果您想与 HTTP
服务器通信,您必须使用 HTTP
协议与其通信。您可以自己重新发明轮子并使用 java.socket
或使用 HttpUrlConnection
或 org.apache.http.client.HttpClient
或 OKHTTP
来实现 HTTP
协议。他们都在后台使用套接字访问 Web 服务器。
What are the advantages of using the java.socket class vs. org.apache.http.client.HttpClient class for instantiating and running multiple HTTP Get requests for real-time data?
所以在我看来,使用 java.socket
与 HTTP server
通信没有任何优势,除非您需要的功能在任何这些库中都不存在。