方法

GiSocketClientconnect_to_uri

自:2.26

声明 [源]

GSocketConnection*
g_socket_client_connect_to_uri (
  GSocketClient* client,
  const gchar* uri,
  guint16 default_port,
  GCancellable* cancellable,
  GError** error
)

描述 [源]

这是 g_socket_client_connect() 的一个辅助函数。

尝试使用网络 URI 创建一个 TCP 连接。

uri 可以是包含一个“权限”组件(主机名/端口)的有效 URI。如果 URI 中未指定端口,则将使用 default_port。如果 GSocketClient:tlsTRUE,则将协商 TLS。(GSocketClient 不知道对于某些 URI 机制自动假设 TLS)。

使用此方法而不是 g_socket_client_connect()g_socket_client_connect_to_host() 允许 GSocketClient 确定何时使用特定于应用程序的代理协议。

成功连接后,将构造一个新的 GSocketConnection 并返回。调用者拥有此新对象,完成时必须释放对其的引用。

在出现任何失败情况(DNS 错误、服务未找到、无法连接到主机)时,将返回 NULL,并将相应地设置 error(如果非 NULL)。

提供自:2.26

参数

uri

类型: const gchar*

网络 URI。

数据由方法的调用者拥有。
值是一个以空字符终止的 UTF-8 字符串。
default_port

类型: guint16

要连接的默认端口。

cancellable

类型: GCancellable

一个 GCancellable,或 NULL

参数可以是 NULL
数据由方法的调用者拥有。
error

类型: GError **

一个可恢复错误的返回位置。

参数可以是 NULL
如果返回地址不是 NULL,那么你必须将其初始化为 NULLGError*
如果没有错误,该方法将保留参数为 NULL
如果发生错误,参数将被设置为分配的新 GError;调用者将拥有数据,并负责释放它。

返回值

类型: GSocketConnection

在成功的情况下返回 GSocketConnection,在错误的情况下返回 NULL

方法调用者将拥有返回的数据,并负责释放它。