Java Sockets编程中SOCKS、DIRECT和HTTP的区别
在sockets编程环境中,SOCKS、DIRECT和HTTP类型的连接之间有什么区别Java Sockets编程中SOCKS、DIRECT和HTTP的区别,java,android,sockets,language-agnostic,Java,Android,Sockets,Language Agnostic,在sockets编程环境中,SOCKS、DIRECT和HTTP类型的连接之间有什么区别 具体来说,我指的是Android socket类,但假设这个问题适用于其他语言。当您编写一个应用程序,使用socket与Internet进行通信时,特别是任何希望使用HTTP的应用程序时,您可能处于以下三种不同情况之一: 与internet的方向连接-您可以直接与另一端的服务器建立TCP/IP连接 通过SOCKS代理连接-您无法在终端建立到服务器的直接连接。相反,您需要使用SOCKS协议联系本地LAN安全网关
具体来说,我指的是Android socket类,但假设这个问题适用于其他语言。当您编写一个应用程序,使用socket与Internet进行通信时,特别是任何希望使用HTTP的应用程序时,您可能处于以下三种不同情况之一:
实际上,存在第四种情况——透明代理,但顾名思义,您的代码不知道它,因此它不由枚举值表示。在这种情况下,您按照场景1(方向连接)进行操作,但实际上您处于场景3(HTTP代理)中。LAN上的网络设备(通常是路由器,有时是交换机)透明地将目标服务器重定向到HTTP代理.谢谢您的详细回答。列出的第4种情况是否与Apache NiFi处理器InvokeHTTP及其相应的参数Proxy Configuration Service设置为DIRECT for Proxy Type同义?@NathanBenton我对NiFi了解不够,无法回答。我的猜测是直接指选项1。但是对于应用程序,选项1和4看起来完全相同。