libcurl 函数之 curl_easy_setopt详解

libcurl 函数之 curl_easy_setopt详解CURLcode curl_easy_setopt(CURL * handle,CURLoption选项,参数); curl_easy_setopt用于告诉libcurl如何表现。通过设置适当的选项,应用程序可以更改libcurl的行为。所有选项都使用选项后跟参数进行设置。该参数…

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

CURLcode curl_easy_setopt(CURL * handle,CURLoption选项,参数);
curl_easy_setopt用于告诉libcurl如何表现。通过设置适当的选项,应用程序可以更改libcurl的行为。所有选项都使用选项后跟参数进行设置。该参数可以是long,函数指针,对象指针或curl_off_t,具体取决于特定选项所期望的内容。请仔细阅读本手册,因为错误的输入值可能导致libcurl表现不佳!您只能在每个函数调用中设置一个选项。典型应用程序在设置阶段使用许多curl_easy_setopt调用。

使用此函数调用设置的选项对使用此句柄执行的所有即将到来的传输有效。传输之间不会以任何方式重置选项,因此如果您希望使用不同选项进行后续传输,则必须在传输之间进行更改。您可以选择使用curl_easy_reset将所有选项重置为内部默认值。

传递给libcurl的字符串作为’char *’参数,由库复制;

因此,curl_easy_setopt返回后,可能会覆盖与指针参数关联的字符串存储。此规则的唯一例外是CURLOPT_POSTFIELDS,但复制字符串CURLOPT_COPYPOSTFIELDS的替代方案具有您需要阅读的一些使用特性。

设置选项的顺序无关紧要。 , 在版本7.17.0之前,不会复制字符串。相反,用户被强制保持可用,直到libcurl不再需要它们。

该手柄是从返回代码curl_easy_init或curl_easy_duphandle电话。

1,行为选择

CURLOPT_VERBOSE		显示详细信息。		请参阅CURLOPT_VERBOSE

CURLOPT_HEADER		在正文输出中包含标题。		请参阅CURLOPT_HEADER

CURLOPT_NOPROGRESS		关闭进度表。		请参阅CURLOPT_NOPROGRESS

CURLOPT_NOSIGNAL		不要安装信号处理程序。		见CURLOPT_NOSIGNAL

CURLOPT_WILDCARDMATCH		根据文件名模式传输多个文件。		请参阅CURLOPT_WILDCARDMATCH

2,CALLBACK选项

CURLOPT_WRITEFUNCTION

	回写写入数据。请参见CURLOPT_WRITEFUNCTION

CURLOPT_WRITEDATA

	传递给写回调的数据指针。请参阅CURLOPT_WRITEDATA

CURLOPT_READFUNCTION

	回调读取数据。请参见CURLOPT_READFUNCTION

CURLOPT_READDATA

	传递给读回调的数据指针。请参阅CURLOPT_READDATA

CURLOPT_IOCTLFUNCTION

	回调I / O操作。请参见CURLOPT_IOCTLFUNCTION

CURLOPT_IOCTLDATA

	传递给I / O回调的数据指针。请参阅CURLOPT_IOCTLDATA

CURLOPT_SEEKFUNCTION

	寻求操作的回调。请参阅CURLOPT_SEEKFUNCTION

CURLOPT_SEEKDATA

	传递给搜索回调的数据指针。见CURLOPT_SEEKDATA

CURLOPT_SOCKOPTFUNCTION

	回调sockopt操作。见CURLOPT_SOCKOPTFUNCTION

CURLOPT_SOCKOPTDATA

	传递给sockopt回调的数据指针。见CURLOPT_SOCKOPTDATA

CURLOPT_OPENSOCKETFUNCTION

	回调套接字创建。请参见CURLOPT_OPENSOCKETFUNCTION

CURLOPT_OPENSOCKETDATA

	数据指针传递给打开的套接字回调。请参见CURLOPT_OPENSOCKETDATA

CURLOPT_CLOSESOCKETFUNCTION

	关闭套接字的回调。请参阅CURLOPT_CLOSESOCKETFUNCTION

CURLOPT_CLOSESOCKETDATA

传递给关闭套接字回调的数据指针。请参见CURLOPT_CLOSESOCKETDATA

CURLOPT_PROGRESSFUNCTION

	OBSOLETE进度表的回调。请参阅CURLOPT_PROGRESSFUNCTION

CURLOPT_PROGRESSDATA

	传递给进度表回调的数据指针。请参阅CURLOPT_PROGRESSDATA

CURLOPT_XFERINFOFUNCTION

	回调进度表。请参见CURLOPT_XFERINFOFUNCTION

CURLOPT_XFERINFODATA

	传递给进度表回调的数据指针。请参阅CURLOPT_XFERINFODATA

CURLOPT_HEADERFUNCTION

	回写写入收到的标题。请参阅CURLOPT_HEADERFUNCTION

CURLOPT_HEADERDATA

	传递给标头回调的数据指针。请参阅CURLOPT_HEADERDATA

CURLOPT_DEBUGFUNCTION

	回调调试信息。请参见CURLOPT_DEBUGFUNCTION

CURLOPT_DEBUGDATA

	传递给调试回调的数据指针。请参见CURLOPT_DEBUGDATA

CURLOPT_SSL_CTX_FUNCTION

	回调SSL上下文逻辑。请参见CURLOPT_SSL_CTX_FUNCTION

CURLOPT_SSL_CTX_DATA

	传递给SSL上下文回调的数据指针。请参见CURLOPT_SSL_CTX_DATA

CURLOPT_CONV_TO_NETWORK_FUNCTION

	回调代码库转换。请参见CURLOPT_CONV_TO_NETWORK_FUNCTION

CURLOPT_CONV_FROM_NETWORK_FUNCTION

	回调代码库转换。请参见CURLOPT_CONV_FROM_NETWORK_FUNCTION

CURLOPT_CONV_FROM_UTF8_FUNCTION

	回调代码库转换。请参见CURLOPT_CONV_FROM_UTF8_FUNCTION

CURLOPT_INTERLEAVEFUNCTION

	回调RTSP交错数据。请参见CURLOPT_INTERLEAVEFUNCTION

CURLOPT_INTERLEAVEDATA

	传递给RTSP交错回调的数据指针。请参阅CURLOPT_INTERLEAVEDATA

CURLOPT_CHUNK_BGN_FUNCTION

	回调通配符下载块的开始。请参见CURLOPT_CHUNK_BGN_FUNCTION

CURLOPT_CHUNK_END_FUNCTION

	回调通配符下载结束块。请参阅CURLOPT_CHUNK_END_FUNCTION

CURLOPT_CHUNK_DATA

	传递给块回调的数据指针。请参阅CURLOPT_CHUNK_DATA

CURLOPT_FNMATCH_FUNCTION

	回调通配符匹配。请参见CURLOPT_FNMATCH_FUNCTION

CURLOPT_FNMATCH_DATA

	传递给通配符匹配回调的数据指针。请参见CURLOPT_FNMATCH_DATA

CURLOPT_SUPPRESS_CONNECT_HEADERS

	从用户回调中抑制代理CONNECT响应头。请参阅CURLOPT_SUPPRESS_CONNECT_HEADERS

CURLOPT_RESOLVER_START_FUNCTION

	在启动新的解析请求之前调用回调。请参见CURLOPT_RESOLVER_START_FUNCTION

CURLOPT_RESOLVER_START_DATA

	传递给解析器的数据指针开始回调。请参见CURLOPT_RESOLVER_START_DATA

3,错误选项

CURLOPT_ERRORBUFFER

错误消息缓冲区。请参阅CURLOPT_ERRORBUFFER

CURLOPT_STDERR

stderr替换流。见CURLOPT_STDERR

CURLOPT_FAILONERROR

HTTP 4xx错误失败。CURLOPT_FAILONERROR

CURLOPT_KEEP_SENDING_ON_ERROR

继续发送HTTP> = 300错误。CURLOPT_KEEP_SENDING_ON_ERROR

4,网络选项

CURLOPT_URL

要处理的URL。请参阅CURLOPT_URL

CURLOPT_PATH_AS_IS

禁用路径中的压缩/../和/./序列。请参见CURLOPT_PATH_AS_IS

CURLOPT_PROTOCOLS

允许的协议。请参阅CURLOPT_PROTOCOLS

CURLOPT_REDIR_PROTOCOLS

允许重定向到的协议。请参阅CURLOPT_REDIR_PROTOCOLS

CURLOPT_DEFAULT_PROTOCOL

默认协议。请参见CURLOPT_DEFAULT_PROTOCOL

CURLOPT_PROXY

要使用的代理。请参阅CURLOPT_PROXY

CURLOPT_PRE_PROXY

袜子代理使用。请参阅CURLOPT_PRE_PROXY

CURLOPT_PROXYPORT

要使用的代理端口。请参阅CURLOPT_PROXYPORT

CURLOPT_PROXYTYPE

代理类型。请参见CURLOPT_PROXYTYPE

CURLOPT_NOPROXY

从代理使用中筛选出主机。CURLOPT_NOPROXY

CURLOPT_HTTPPROXYTUNNEL

通过HTTP代理隧道。CURLOPT_HTTPPROXYTUNNEL

CURLOPT_CONNECT_TO

连接到特定主机和端口。请参阅CURLOPT_CONNECT_TO

CURLOPT_SOCKS5_AUTH

Socks5身份验证方法。见CURLOPT_SOCKS5_AUTH

CURLOPT_SOCKS5_GSSAPI_SERVICE

Socks5 GSSAPI服务名称。CURLOPT_SOCKS5_GSSAPI_SERVICE

CURLOPT_SOCKS5_GSSAPI_NEC

Socks5 GSSAPI NEC模式。请参阅CURLOPT_SOCKS5_GSSAPI_NEC

CURLOPT_PROXY_SERVICE_NAME

代理验证服务名称。CURLOPT_PROXY_SERVICE_NAME

CURLOPT_HAPROXYPROTOCOL

发送HAProxy PROXY协议v1标头。请参阅CURLOPT_HAPROXYPROTOCOL

CURLOPT_SERVICE_NAME

验证服务名称。CURLOPT_SERVICE_NAME

CURLOPT_INTERFACE

将连接本地绑定到此。见CURLOPT_INTERFACE

CURLOPT_LOCALPORT

将连接本地绑定到此端口。请参阅CURLOPT_LOCALPORT

CURLOPT_LOCALPORTRANGE

将连接本地绑定到端口范围。请参阅CURLOPT_LOCALPORTRANGE

CURLOPT_DNS_CACHE_TIMEOUT

DNS缓存超时。请参阅CURLOPT_DNS_CACHE_TIMEOUT

CURLOPT_DNS_USE_GLOBAL_CACHE

OBSOLETE启用全局DNS缓存。请参见CURLOPT_DNS_USE_GLOBAL_CACHE

CURLOPT_DOH_URL

使用此DOH服务器进行名称解析。请参阅CURLOPT_DOH_URL

CURLOPT_BUFFERSIZE

要求备用缓冲区大小。请参阅CURLOPT_BUFFERSIZE

CURLOPT_PORT

要连接的端口号。请参见CURLOPT_PORT

CURLOPT_TCP_FASTOPEN

启用TFO,TCP快速打开。见CURLOPT_TCP_FASTOPEN

CURLOPT_TCP_NODELAY

禁用Nagle算法。请参阅CURLOPT_TCP_NODELAY

CURLOPT_ADDRESS_SCOPE

本地地址的IPv6范围。请参阅CURLOPT_ADDRESS_SCOPE

CURLOPT_TCP_KEEPALIVE

启用TCP keep-alive。请参阅CURLOPT_TCP_KEEPALIVE

CURLOPT_TCP_KEEPIDLE

发送保持活动之前的空闲时间。请参阅CURLOPT_TCP_KEEPIDLE

CURLOPT_TCP_KEEPINTVL

保持活动探针之间的间隔。见CURLOPT_TCP_KEEPINTVL

CURLOPT_UNIX_SOCKET_PATH

Unix域套接字的路径。请参见CURLOPT_UNIX_SOCKET_PATH

CURLOPT_ABSTRACT_UNIX_SOCKET

抽象的Unix域套接字的路径。请参阅CURLOPT_ABSTRACT_UNIX_SOCKET

5,名称和密码选项(认证)

CURLOPT_NETRC

启用.netrc解析。见CURLOPT_NETRC

CURLOPT_NETRC_FILE

.netrc文件名。请参阅CURLOPT_NETRC_FILE

CURLOPT_USERPWD

用户名和密码。请参阅CURLOPT_USERPWD

CURLOPT_PROXYUSERPWD

代理用户名和密码。请参阅CURLOPT_PROXYUSERPWD

CURLOPT_USERNAME

用户名。请参阅CURLOPT_USERNAME

CURLOPT_PASSWORD

密码。见CURLOPT_PASSWORD

CURLOPT_LOGIN_OPTIONS

登录选项。请参见CURLOPT_LOGIN_OPTIONS

CURLOPT_PROXYUSERNAME

代理用户名。请参阅CURLOPT_PROXYUSERNAME

CURLOPT_PROXYPASSWORD

代理密码。见CURLOPT_PROXYPASSWORD

CURLOPT_HTTPAUTH

HTTP服务器验证方法。请参阅CURLOPT_HTTPAUTH

CURLOPT_TLSAUTH_USERNAME

TLS身份验证用户名。请参阅CURLOPT_TLSAUTH_USERNAME

CURLOPT_PROXY_TLSAUTH_USERNAME

代理TLS身份验证用户名。请参阅CURLOPT_PROXY_TLSAUTH_USERNAME

CURLOPT_TLSAUTH_PASSWORD

TLS身份验证密码。请参阅CURLOPT_TLSAUTH_PASSWORD

CURLOPT_PROXY_TLSAUTH_PASSWORD

代理TLS身份验证密码。请参阅CURLOPT_PROXY_TLSAUTH_PASSWORD

CURLOPT_TLSAUTH_TYPE

TLS身份验证方法。请参见CURLOPT_TLSAUTH_TYPE

CURLOPT_PROXY_TLSAUTH_TYPE

代理TLS身份验证方法。请参见CURLOPT_PROXY_TLSAUTH_TYPE

CURLOPT_PROXYAUTH

HTTP代理身份验证方法。请参阅CURLOPT_PROXYAUTH

CURLOPT_SASL_IR

启用S​​ASL初始响应。见CURLOPT_SASL_IR

CURLOPT_XOAUTH2_BEARER

OAuth2持票人令牌。请参阅CURLOPT_XOAUTH2_BEARER

CURLOPT_DISALLOW_USERNAME_IN_URL

不允许在URL中使用用户名。请参阅CURLOPT_DISALLOW_USERNAME_IN_URL

6,HTTP选项

CURLOPT_AUTOREFERER

自动设置Referer:标头。请参阅CURLOPT_AUTOREFERER

CURLOPT_ACCEPT_ENCODING

Accept-Encoding和自动解压缩数据。请参阅CURLOPT_ACCEPT_ENCODING

CURLOPT_TRANSFER_ENCODING

请求传输编码。请参阅CURLOPT_TRANSFER_ENCODING

CURLOPT_FOLLOWLOCATION

遵循HTTP重定向。请参阅CURLOPT_FOLLOWLOCATION

CURLOPT_UNRESTRICTED_AUTH

不要将身份验证限制为原始主机。CURLOPT_UNRESTRICTED_AUTH

CURLOPT_MAXREDIRS

要遵循的最大重定向数。见CURLOPT_MAXREDIRS

CURLOPT_POSTREDIR

如何在POST后对重定向进行操作。见CURLOPT_POSTREDIR

CURLOPT_PUT

发出HTTP PUT请求。见CURLOPT_PUT

CURLOPT_POST

发出HTTP POST请求。请参阅CURLOPT_POST

CURLOPT_POSTFIELDS

发送包含此数据的POST。请参阅CURLOPT_POSTFIELDS

CURLOPT_POSTFIELDSIZE

POST数据很大。请参阅CURLOPT_POSTFIELDSIZE

CURLOPT_POSTFIELDSIZE_LARGE

POST数据很大。请参阅CURLOPT_POSTFIELDSIZE_LARGE

CURLOPT_COPYPOSTFIELDS

发送包含此数据的POST - 并将其复制。请参阅CURLOPT_COPYPOSTFIELDS

CURLOPT_HTTPPOST

Multipart formpost HTTP POST。请参阅CURLOPT_HTTPPOST

CURLOPT_REFERER

Referer:标题。请参阅CURLOPT_REFERER

CURLOPT_USERAGENT

User-Agent:标题。请参阅CURLOPT_USERAGENT

CURLOPT_HTTPHEADER

自定义HTTP标头。请参阅CURLOPT_HTTPHEADER

CURLOPT_HEADEROPT

控制自定义标头。见CURLOPT_HEADEROPT

CURLOPT_PROXYHEADER

发送到代理的自定义HTTP标头。请参阅CURLOPT_PROXYHEADER

CURLOPT_HTTP200ALIASES

替代版本200 OK。请参阅CURLOPT_HTTP200ALIASES

CURLOPT_COOKIE

要发送的Cookie。见CURLOPT_COOKIE

CURLOPT_COOKIEFILE

文件从中读取cookie。请参阅CURLOPT_COOKIEFILE

CURLOPT_COOKIEJAR

要写入cookie的文件。见CURLOPT_COOKIEJAR

CURLOPT_COOKIESESSION

开始一个新的cookie会话。请参阅CURLOPT_COOKIESESSION

CURLOPT_COOKIELIST

添加或控制cookie。见CURLOPT_COOKIELIST

CURLOPT_ALTSVC

指定Alt-Svc:缓存文件名。见CURLOPT_ALTSVC

CURLOPT_ALTSVC_CTRL

启用并配置Alt-Svc:治疗。请参阅CURLOPT_ALTSVC_CTRL

CURLOPT_HTTPGET

执行HTTP GET请求。见CURLOPT_HTTPGET

CURLOPT_REQUEST_TARGET

设置请求目标。CURLOPT_REQUEST_TARGET

CURLOPT_H3

指定HTTP / 3行为。CURLOPT_H3

CURLOPT_HTTP_VERSION

要使用的HTTP版本。CURLOPT_HTTP_VERSION

CURLOPT_HTTP09_ALLOWED

允许HTTP / 0.9响应。CURLOPT_HTTP09_ALLOWED

CURLOPT_IGNORE_CONTENT_LENGTH

忽略内容长度。请参阅CURLOPT_IGNORE_CONTENT_LENGTH

CURLOPT_HTTP_CONTENT_DECODING

禁用内容解码。请参阅CURLOPT_HTTP_CONTENT_DECODING

CURLOPT_HTTP_TRANSFER_DECODING

禁用传输解码。请参阅CURLOPT_HTTP_TRANSFER_DECODING

CURLOPT_EXPECT_100_TIMEOUT_MS

100-继续超时。请参阅CURLOPT_EXPECT_100_TIMEOUT_MS

CURLOPT_TRAILERFUNCTION

设置回调以发送尾随标头。请参阅CURLOPT_TRAILERFUNCTION

CURLOPT_TRAILERDATA

自定义指针传递给尾部标题回调。请参阅CURLOPT_TRAILERDATA

CURLOPT_PIPEWAIT

等待连接到管道上。请参阅CURLOPT_PIPEWAIT

CURLOPT_STREAM_DEPENDS

此HTTP / 2流依赖于另一个。请参阅CURLOPT_STREAM_DEPENDS

CURLOPT_STREAM_DEPENDS_E

此HTTP / 2流仅依赖于另一个。请参阅CURLOPT_STREAM_DEPENDS_E

CURLOPT_STREAM_WEIGHT

设置此HTTP / 2流的权重。请参阅CURLOPT_STREAM_WEIGHT

7,TFTP选项

CURLOPT_TFTP_BLKSIZE

TFTP块大小。请参阅CURLOPT_TFTP_BLKSIZE

CURLOPT_TFTP_NO_OPTIONS

不要发送TFTP选项请求。请参见CURLOPT_TFTP_NO_OPTIONS

8,FTP选项

CURLOPT_FTPPORT

使用活动FTP。请参见CURLOPT_FTPPORT

CURLOPT_QUOTE

在传输之前运行的命令。见CURLOPT_QUOTE

CURLOPT_POSTQUOTE

传输后运行的命令。请参阅CURLOPT_POSTQUOTE

CURLOPT_PREQUOTE

在传输之前运行的命令。请参阅CURLOPT_PREQUOTE

CURLOPT_APPEND

附加到远程文件。请参阅CURLOPT_APPEND

CURLOPT_FTP_USE_EPRT

使用EPTR。请参阅CURLOPT_FTP_USE_EPRT

CURLOPT_FTP_USE_EPSV

使用EPSV。请参阅CURLOPT_FTP_USE_EPSV

CURLOPT_FTP_USE_PRET

使用PRET。请参见CURLOPT_FTP_USE_PRET

CURLOPT_FTP_CREATE_MISSING_DIRS

在远程服务器上创建缺少的目录。请参见CURLOPT_FTP_CREATE_MISSING_DIRS

CURLOPT_FTP_RESPONSE_TIMEOUT

FTP响应超时。请参见CURLOPT_FTP_RESPONSE_TIMEOUT

CURLOPT_FTP_ALTERNATIVE_TO_USER

USER的替代品。请参见CURLOPT_FTP_ALTERNATIVE_TO_USER

CURLOPT_FTP_SKIP_PASV_IP

忽略PASV响应中的IP地址。请参见CURLOPT_FTP_SKIP_PASV_IP

CURLOPT_FTPSSLAUTH

控制如何进行TLS。请参阅CURLOPT_FTPSSLAUTH

CURLOPT_FTP_SSL_CCC

身份验证后再次返回非TLS。请参见CURLOPT_FTP_SSL_CCC

CURLOPT_FTP_ACCOUNT

发送ACCT命令。请参阅CURLOPT_FTP_ACCOUNT

CURLOPT_FTP_FILEMETHOD

指定如何访问文件。请参见CURLOPT_FTP_FILEMETHOD

9,RTSP选项

CURLOPT_RTSP_REQUEST

RTSP请求。请参阅CURLOPT_RTSP_REQUEST

CURLOPT_RTSP_SESSION_ID

RTSP会话ID。请参见CURLOPT_RTSP_SESSION_ID

CURLOPT_RTSP_STREAM_URI

RTSP流URI。请参阅CURLOPT_RTSP_STREAM_URI

CURLOPT_RTSP_TRANSPORT

RTSP传输:标头。请参见CURLOPT_RTSP_TRANSPORT

CURLOPT_RTSP_CLIENT_CSEQ

客户CSEQ号码。请参阅CURLOPT_RTSP_CLIENT_CSEQ

CURLOPT_RTSP_SERVER_CSEQ

RTSP服务器的CSEQ编号 - >客户端请求。请参阅CURLOPT_RTSP_SERVER_CSEQ

10,协议选项

CURLOPT_TRANSFERTEXT

使用文本传输。请参阅CURLOPT_TRANSFERTEXT

CURLOPT_PROXY_TRANSFER_MODE

将传输模式添加到代理URL。请参见CURLOPT_PROXY_TRANSFER_MODE

CURLOPT_CRLF

转换换行符。见CURLOPT_CRLF

CURLOPT_RANGE

范围请求。请参阅CURLOPT_RANGE

CURLOPT_RESUME_FROM

恢复转移。请参见CURLOPT_RESUME_FROM

CURLOPT_RESUME_FROM_LARGE

恢复转移。请参见CURLOPT_RESUME_FROM_LARGE

CURLOPT_CURLU

设置URL以使用CURLU *。见CURLOPT_CURLU

CURLOPT_CUSTOMREQUEST

自定义请求/方法。请参阅CURLOPT_CUSTOMREQUEST

CURLOPT_FILETIME

请求文件修改日期和时间。请参阅CURLOPT_FILETIME

CURLOPT_DIRLISTONLY

仅限列表。请参阅CURLOPT_DIRLISTONLY

CURLOPT_NOBODY

不要得到身体内容。请参阅CURLOPT_NOBODY

CURLOPT_INFILESIZE

要发送的文件大小。CURLOPT_INFILESIZE

CURLOPT_INFILESIZE_LARGE

要发送的文件大小。CURLOPT_INFILESIZE_LARGE

CURLOPT_UPLOAD

上传数据。见CURLOPT_UPLOAD

CURLOPT_UPLOAD_BUFFERSIZE

设置上传缓冲区大小。请参阅CURLOPT_UPLOAD_BUFFERSIZE

CURLOPT_MIMEPOST

发布/发送MIME数据。请参阅CURLOPT_MIMEPOST

CURLOPT_MAXFILESIZE

要获取的最大文件大小。请参阅CURLOPT_MAXFILESIZE

CURLOPT_MAXFILESIZE_LARGE

要获取的最大文件大小。请参阅CURLOPT_MAXFILESIZE_LARGE

CURLOPT_TIMECONDITION

提出有条件的时间要求。请参阅CURLOPT_TIMECONDITION

CURLOPT_TIMEVALUE

时间条件请求的时间值。请参阅CURLOPT_TIMEVALUE

CURLOPT_TIMEVALUE_LARGE

时间条件请求的时间值。请参阅CURLOPT_TIMEVALUE_LARGE

11,连接选项

CURLOPT_TIMEOUT

整个请求超时。请参阅CURLOPT_TIMEOUT

CURLOPT_TIMEOUT_MS

整个请求的毫秒超时。请参阅CURLOPT_TIMEOUT_MS

CURLOPT_LOW_SPEED_LIMIT

低速限制中止转移。请参阅CURLOPT_LOW_SPEED_LIMIT

CURLOPT_LOW_SPEED_TIME

时间低于触发低速中止的速度。请参阅CURLOPT_LOW_SPEED_TIME

CURLOPT_MAX_SEND_SPEED_LARGE

将上传速度限制为此。请参阅CURLOPT_MAX_SEND_SPEED_LARGE

CURLOPT_MAX_RECV_SPEED_LARGE

将下载速度限制为此。请参阅CURLOPT_MAX_RECV_SPEED_LARGE

CURLOPT_MAXCONNECTS

连接池中的最大连接数。请参阅CURLOPT_MAXCONNECTS

CURLOPT_FRESH_CONNECT

使用新连接。CURLOPT_FRESH_CONNECT

CURLOPT_FORBID_REUSE

防止后续连接重新使用它。请参阅CURLOPT_FORBID_REUSE

CURLOPT_MAXAGE_CONN

限制连接的使用年限。请参阅CURLOPT_MAXAGE_CONN

CURLOPT_CONNECTTIMEOUT

连接阶段超时。请参阅CURLOPT_CONNECTTIMEOUT

CURLOPT_CONNECTTIMEOUT_MS

连接阶段的毫秒超时。请参见CURLOPT_CONNECTTIMEOUT_MS

CURLOPT_IPRESOLVE

要解析的IP版本。请参阅CURLOPT_IPRESOLVE

CURLOPT_CONNECT_ONLY

只有连接,没有别的。请参阅CURLOPT_CONNECT_ONLY

CURLOPT_USE_SSL

使用TLS / SSL。请参阅CURLOPT_USE_SSL

CURLOPT_RESOLVE

提供固定/假名解析。请参阅CURLOPT_RESOLVE

CURLOPT_DNS_INTERFACE

绑定名称解析为此接口。请参阅CURLOPT_DNS_INTERFACE

CURLOPT_DNS_LOCAL_IP4

绑定名称解析为此IP4地址。请参见CURLOPT_DNS_LOCAL_IP4

CURLOPT_DNS_LOCAL_IP6

绑定名称解析为此IP6地址。请参阅CURLOPT_DNS_LOCAL_IP6

CURLOPT_DNS_SERVERS

首选DNS服务器。请参阅CURLOPT_DNS_SERVERS

CURLOPT_DNS_SHUFFLE_ADDRESSES

使用前随机播放地址。请参阅CURLOPT_DNS_SHUFFLE_ADDRESSES

CURLOPT_ACCEPTTIMEOUT_MS

等待服务器连接的超时被接受。请参阅CURLOPT_ACCEPTTIMEOUT_MS

CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS

快乐眼球超时。请参阅CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS

CURLOPT_UPKEEP_INTERVAL_MS

设置执行连接保养的时间间隔。请参见CURLOPT_UPKEEP_INTERVAL_MS

12,SSL和安全选项

CURLOPT_SSLCERT

客户证书。见CURLOPT_SSLCERT

CURLOPT_PROXY_SSLCERT

代理客户端证书。请参阅CURLOPT_PROXY_SSLCERT

CURLOPT_SSLCERTTYPE

客户端证书类型。请参见CURLOPT_SSLCERTTYPE

CURLOPT_PROXY_SSLCERTTYPE

代理客户端证书类型。请参见CURLOPT_PROXY_SSLCERTTYPE

CURLOPT_SSLKEY

客户端密钥。请参阅CURLOPT_SSLKEY

CURLOPT_PROXY_SSLKEY

代理客户端密钥。请参阅CURLOPT_PROXY_SSLKEY

CURLOPT_SSLKEYTYPE

客户端密钥类型。请参见CURLOPT_SSLKEYTYPE

CURLOPT_PROXY_SSLKEYTYPE

代理客户端密钥类型。请参见CURLOPT_PROXY_SSLKEYTYPE

CURLOPT_KEYPASSWD

客户端密钥密码。请参阅CURLOPT_KEYPASSWD

CURLOPT_PROXY_KEYPASSWD

代理客户端密钥密码。请参阅CURLOPT_PROXY_KEYPASSWD

CURLOPT_SSL_ENABLE_ALPN

启用ALPN。请参阅CURLOPT_SSL_ENABLE_ALPN

CURLOPT_SSL_ENABLE_NPN

启用NPN。请参阅CURLOPT_SSL_ENABLE_NPN

CURLOPT_SSLENGINE

使用带SSL引擎的标识符。请参阅CURLOPT_SSLENGINE

CURLOPT_SSLENGINE_DEFAULT

默认SSL引擎。请参阅CURLOPT_SSLENGINE_DEFAULT

CURLOPT_SSL_FALSESTART

启用TLS False Start。请参阅CURLOPT_SSL_FALSESTART

CURLOPT_SSLVERSION

要使用的SSL版本。请参阅CURLOPT_SSLVERSION

CURLOPT_PROXY_SSLVERSION

要使用的代理SSL版本。请参阅CURLOPT_PROXY_SSLVERSION

CURLOPT_SSL_VERIFYHOST

验证SSL证书中的主机名。请参阅CURLOPT_SSL_VERIFYHOST

CURLOPT_PROXY_SSL_VERIFYHOST

验证代理SSL证书中的主机名。请参阅CURLOPT_PROXY_SSL_VERIFYHOST

CURLOPT_SSL_VERIFYPEER

验证SSL证书。请参阅CURLOPT_SSL_VERIFYPEER

CURLOPT_PROXY_SSL_VERIFYPEER

验证代理SSL证书。请参见CURLOPT_PROXY_SSL_VERIFYPEER

CURLOPT_SSL_VERIFYSTATUS

验证SSL证书的状态。见CURLOPT_SSL_VERIFYSTATUS

CURLOPT_CAINFO

CA证书捆绑包。见CURLOPT_CAINFO

CURLOPT_PROXY_CAINFO

代理CA证书捆绑包。请参阅CURLOPT_PROXY_CAINFO

CURLOPT_ISSUERCERT

发行人证明。请参阅CURLOPT_ISSUERCERT

CURLOPT_CAPATH

CA证书捆绑包的路径。请参阅CURLOPT_CAPATH

CURLOPT_PROXY_CAPATH

代理CA证书捆绑包的路径。请参阅CURLOPT_PROXY_CAPATH

CURLOPT_CRLFILE

证书撤销清单。请参阅CURLOPT_CRLFILE

CURLOPT_PROXY_CRLFILE

代理证书撤销清单。请参阅CURLOPT_PROXY_CRLFILE

CURLOPT_CERTINFO

提取证书信息。请参阅CURLOPT_CERTINFO

CURLOPT_PINNEDPUBLICKEY

设置固定SSL公钥。请参见CURLOPT_PINNEDPUBLICKEY

CURLOPT_PROXY_PINNEDPUBLICKEY

设置代理的固定SSL公钥。请参阅CURLOPT_PROXY_PINNEDPUBLICKEY

CURLOPT_RANDOM_FILE

提供熵随机数据的来源。请参阅CURLOPT_RANDOM_FILE

CURLOPT_EGDSOCKET

识别用于熵的EGD套接字。请参阅CURLOPT_EGDSOCKET

CURLOPT_SSL_CIPHER_LIST

要使用的密码。请参阅CURLOPT_SSL_CIPHER_LIST

CURLOPT_PROXY_SSL_CIPHER_LIST

要使用的代理密码。请参阅CURLOPT_PROXY_SSL_CIPHER_LIST

CURLOPT_TLS13_CIPHERS

使用TLS 1.3密码套件。见CURLOPT_TLS13_CIPHERS

CURLOPT_PROXY_TLS13_CIPHERS

代理TLS 1.3密码套件使用。请参阅CURLOPT_PROXY_TLS13_CIPHERS

CURLOPT_SSL_SESSIONID_CACHE

禁用SSL会话ID缓存。请参见CURLOPT_SSL_SESSIONID_CACHE

CURLOPT_SSL_OPTIONS

控制SSL行为。请参阅CURLOPT_SSL_OPTIONS

CURLOPT_PROXY_SSL_OPTIONS

控制代理SSL行为。请参阅CURLOPT_PROXY_SSL_OPTIONS

CURLOPT_KRBLEVEL

Kerberos安全级别。请参阅CURLOPT_KRBLEVEL

CURLOPT_GSSAPI_DELEGATION

禁用GSS-API委派。请参阅CURLOPT_GSSAPI_DELEGATION

13,SSH选项

CURLOPT_SSH_AUTH_TYPES

SSH身份验证类型。请参阅CURLOPT_SSH_AUTH_TYPES

CURLOPT_SSH_COMPRESSION

启用S​​SH压缩。请参见CURLOPT_SSH_COMPRESSION

CURLOPT_SSH_HOST_PUBLIC_KEY_MD5

主机公钥的MD5。请参见CURLOPT_SSH_HOST_PUBLIC_KEY_MD5

CURLOPT_SSH_PUBLIC_KEYFILE

公钥的文件名。请参见CURLOPT_SSH_PUBLIC_KEYFILE

CURLOPT_SSH_PRIVATE_KEYFILE

私钥的文件名。请参见CURLOPT_SSH_PRIVATE_KEYFILE

CURLOPT_SSH_KNOWNHOSTS

已知主机的文件名。请参阅CURLOPT_SSH_KNOWNHOSTS

CURLOPT_SSH_KEYFUNCTION

已知主机处理的回调。请参阅CURLOPT_SSH_KEYFUNCTION

CURLOPT_SSH_KEYDATA

自定义指针传递给ssh键回调。请参阅CURLOPT_SSH_KEYDATA

14,其他选项

CURLOPT_PRIVATE

存储的私有指针。请参阅CURLOPT_PRIVATE

CURLOPT_SHARE

共享要使用的对象。请参阅CURLOPT_SHARE

CURLOPT_NEW_FILE_PERMS

用于创建新远程文件的模式。请参阅CURLOPT_NEW_FILE_PERMS

CURLOPT_NEW_DIRECTORY_PERMS

用于创建新远程目录的模式。请参阅CURLOPT_NEW_DIRECTORY_PERMS

15,TELNET选项

CURLOPT_TELNETOPTIONS

TELNET选项。请参阅CURLOPT_TELNETOPTIONS

返回值:

CURLE_OK(零)表示选项设置正确,非零表示 <curl / curl.h>定义时发生错误。有关说明的完整列表,请参见
libcurl-errors手册页。 、
如果您尝试设置libcurl不知道的选项,可能是因为库太旧而无法支持它或者在最近的版本中删除了该选项,此函数将返回CURLE_UNKNOWN_OPTION。如果在编译时禁用了对该选项的支持,则它将返回CURLE_NOT_BUILT_IN。

今天的文章libcurl 函数之 curl_easy_setopt详解分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/59603.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注