方法
GioSocketClientadd_application_proxy
声明 [src]
void
g_socket_client_add_application_proxy (
GSocketClient* client,
const gchar* protocol
)
描述 [src]
启用代理协议由应用程序处理。当通过 GProxyResolver
返回指定代理协议时,GSocketClient
将将该协议视为受支持协议,但不会尝试查找处理握手的 GProxy
实例。应用程序必须通过在返回的 GSocketConnection
上调用 g_socket_connection_get_remote_address()
来检查这种情况,并查看它是否是适当类型的 GProxyAddress
,以确定是否需要自行处理代理握手。
这应用于如 HTTP 代理之类的其他协议方言的代理协议。它还允许位于协议之间的代理协议共存。一个很好的例子是 HTTP。它可以用来代理 HTTP、FTP 和 Gopher,也可以通过 HTTP CONNECT 方法用作通用的套接字代理。
当检测到代理为应用代理时,将跳过 TLS 握手。这是为了让应用程序进行特定代理的手动握手。