• man curl_easy_setopt(原创)


    中文翻译:

    curl_easy_setopt(3) libcurl 手册 curl_easy_setopt(3)

    名称
    curl_easy_setopt -curl的设置选项
    概要
    #include <curl/curl.h>
    CURLcode curl_easy_setopt(CURL *handle, CURLoption option, parameter);
    描述
    curl_easy_setopt(3)是用来告诉libcurl如何表现.通过设置适当的选项,应用程序可以改变libcurl的行为。所有选项都设置一个选项,然后由一个参数.
    这个比较长:一个函数指针,一个对象的指针或curl_off_t,取决于具体方案预计。如果参数的值不符合要求,可能导致libcurl达到理想效果,请仔细阅读本手册。一个典型的应用程序中会使用许多‐curl_easy_setopt(3)来对环境进行设置。此函数调用的选项设置对下面程序进行传输执行的参数设置,这个函数不能对已经设置的函数进行恢复,如果你想回到内部默认的状态,你可以调用curl_easy_reset(3)。

    字符串传递给libcurl作为字符串参数,由图书馆复制,从而对指针参数的字符串储存空间可能会被curl_easy_setopt(3)的返回值覆盖。

    字符串传递给libcurl作为字符串参数,由文件管理系统复制,从而对指针参数关联的字符串存储空间可能会被curl_easy_setopt(3)的返回值覆盖。这个规则的唯一例外是 really 的curlopt_postfields(3),但选择拷贝的字符串curlopt_copypostfields(3)有一定的使用特点需要你读了。

    选项设置的顺序不重要。

    以前的版本7.17.0,字符串不复制。相反,保持用户促使有效直到libcurl不再需要他们。

    处理是从curl_easy_init返回代码(3)或(3)curl_easy_duphandle调用。
    行为选择
    CURLOPT_VERBOSE
    如果你想CURL报告每一件意外的事情,设置这个选项为一个非零值。See CURLOPT_VERBOSE(3)
    CURLOPT_HEADER
    如果你想把一个头包含在输出中,设置这个选项为一个非零值. See CURLOPT_HEADER(3)
    CURLOPT_NOPROGRESS
    关闭进度表. See CURLOPT_NOPROGRESS(3)
    CURLOPT_NOSIGNAL
    不要安装信号处理程序. See CURLOPT_NOSIGNAL(3)
    CURLOPT_WILDCARDMATCH
    根据文件名模式传输多个文件. See CURLOPT_WILDCARDMATCH(3)
    回调函数的选择
    CURLOPT_WRITEFUNCTION
    写入数据的回调. See CURLOPT_WRITEFUNCTION(3)
    CURLOPT_WRITEDATA
    数据指针传递给写回调. See CURLOPT_WRITE‐DATA(3)
    CURLOPT_READFUNCTION
    读取数据回调. See CURLOPT_READFUNCTION(3)
    CURLOPT_READDATA
    数据指针传递给读回调. See CURLOPT_READ‐DATA(3)
    CURLOPT_IOCTLFUNCTION
    回调的I/O操作. See CURLOPT_IOCTLFUNCTION(3)
    CURLOPT_IOCTLDATA
    数据指针传递给I/O回调. See CURLOPT_IOCTL‐DATA(3)
    CURLOPT_SEEKFUNCTION
    寻求操作的回调. See CURLOPT_SEEKFUNCTION(3)
    CURLOPT_SEEKDATA
    数据指针传递给寻求回调. See CURLOPT_SEEK‐ DATA(3)
    CURLOPT_SOCKOPTFUNCTION
    套接字创建的回调. See CURLOPT_SOCKOPTFUNCTION(3)
    CURLOPT_SOCKOPTDATA
    数据指针传递给sockopt回调. See CURLOPT_SOCK‐OPTDATA(3)
    CURLOPT_OPENSOCKETFUNCTION
    创建套接字(socket)的回调. See CURLOPT_OPENSOCKETFUNCTION(3)
    CURLOPT_OPENSOCKETDATA
    数据指针传递给打开的套接字(socket)回调.See CUR‐LOPT_OPENSOCKETDATA(3)
    CURLOPT_CLOSESOCKETFUNCTION
    关闭套接字(socket)的回调. See CURLOPT_CLOSESOCKETFUNCTION(3)
    CURLOPT_CLOSESOCKETDATA
    数据指针传递给 关闭套接字回调
    数据指针传递给关闭套接字(socket)回调. See CUR‐LOPT_CLOSESOCKETDATA(3)
    CURLOPT_PROGRESSFUNCTION
    过时的回调进度表(meter). See CURLOPT_PROGRESSFUNC‐TION(3)
    CURLOPT_PROGRESSDATA
    数据指针传递给进度表(meter)回调. See CUR‐LOPT_PROGRESSDATA(3)
    CURLOPT_XFERINFOFUNCTION
    进度表的回调. See CURLOPT_XFERINFOFUNCTION(3)
    CURLOPT_XFERINFODATA
    数据指针传递给进度表回调.See CUR‐LOPT_XFERINFODATA(3)
    CURLOPT_HEADERFUNCTION
    写入接收头的回调. See CURLOPT_HEADERFUNC‐TION(3)
    CURLOPT_HEADERDATA
    数据指针指向头(header)回调. See CURLOPT_HEADER‐DATA(3)
    CURLOPT_DEBUGFUNCTION
    调试信息的回调. See CURLOPT_DEBUGFUNCTION(3)
    CURLOPT_DEBUGDATA
    数据指传递向调试回调. See CURLOPT_DEBUG‐DATA(3)
    CURLOPT_SSL_CTX_FUNCTION
    ssl上线文逻辑回调. See CURLOPT_SSL_CTX_FUNCTION(3)
    CURLOPT_SSL_CTX_DATA
    数据指针传递给SSL上下文回调. See CUR‐LOPT_SSL_CTX_DATA(3)
    CURLOPT_CONV_TO_NETWORK_FUNCTION
    代码库转换的回调. See CURLOPT_CONV_TO_NET‐WORK_FUNCTION(3)
    CURLOPT_CONV_FROM_NETWORK_FUNCTION
    代码库转换的回调. See CURLOPT_CONV_FROM_NET‐WORK_FUNCTION(3)
    CURLOPT_CONV_FROM_UTF8_FUNCTION
    代码库转换的回调. See CUR‐LOPT_CONV_FROM_UTF8_FUNCTION(3)
    CURLOPT_INTERLEAVEFUNCTION
    回调RTSP交错的数据. See CURLOPT_INTERLEAVEFUNC‐TION(3)
    CURLOPT_INTERLEAVEDATA
    数据指针通过RTSP交织回调. See CUR‐LOPT_INTERLEAVEDATA(3)
    CURLOPT_CHUNK_BGN_FUNCTION
    通配符下载启动块回调. See CUR‐LOPT_CHUNK_BGN_FUNCTION(3)
    CURLOPT_CHUNK_END_FUNCTION
    对于大块通配符下载结束回调. See CUR‐LOPT_CHUNK_END_FUNCTION(3)
    CURLOPT_CHUNK_DATA
    数据指针传递给块回调.See CUR‐LOPT_CHUNK_DATA(3)
    CURLOPT_FNMATCH_FUNCTION
    通配符匹配回调. See CURLOPT_FNMATCH_FUNCTION(3)
    CURLOPT_FNMATCH_DATA
    数据指针通过通配符匹配回调. See CUR‐LOPT_FNMATCH_DATA(3)
    错误选择
    CURLOPT_ERRORBUFFER
    错误消息缓冲区. See CURLOPT_ERRORBUFFER(3)
    CURLOPT_STDERR
    标准错误置换流. See CURLOPT_STDERR(3)
    CURLOPT_FAILONERROR
    在HTTP 4xx 错误失败. CURLOPT_FAILONERROR(3)
    网络选项
    CURLOPT_URL
    URL工作. See CURLOPT_URL(3)
    CURLOPT_PATH_AS_IS
    禁用挤压/../ 和/../在路径序列. See CUR‐LOPT_PATH_AS_IS(3)
    CURLOPT_PROTOCOLS
    协议允许. See CURLOPT_PROTOCOLS(3)
    CURLOPT_REDIR_PROTOCOLS
    协议允许重定向到. See CURLOPT_REDIR_PROTOCOLS(3)
    CURLOPT_DEFAULT_PROTOCOL
    默认协议. See CURLOPT_DEFAULT_PROTOCOL(3)
    CURLOPT_PROXY
    使用代理. See CURLOPT_PROXY(3)
    CURLOPT_PROXYPORT
    代理端口使用. See CURLOPT_PROXYPORT(3)
    CURLOPT_PROXYTYPE
    代理类型. See CURLOPT_PROXYTYPE(3)
    CURLOPT_NOPROXY
    从代理使用筛选主机. CURLOPT_NOPROXY(3)
    CURLOPT_HTTPPROXYTUNNEL
    通过HTTP代理隧道. CURLOPT_HTTPPROXYTUNNEL(3)
    CURLOPT_SOCKS5_GSSAPI_SERVICE
    Socks5 GSSAPI服务名字. CURLOPT_SOCKS5_GSSAPI_SERVICE(3)
    CURLOPT_SOCKS5_GSSAPI_NEC
    Socks5 GSSAPI 无差错校验模式. See CURLOPT_SOCKS5_GSSAPI_NEC(3)
    CURLOPT_PROXY_SERVICE_NAME
    代理服务名字. CURLOPT_PROXY_SERVICE_NAME(3)
    CURLOPT_SERVICE_NAME
    SPNEGO服务名字. CURLOPT_SERVICE_NAME(3)
    CURLOPT_INTERFACE
    绑定本地连接. See CURLOPT_INTERFACE(3)
    CURLOPT_LOCALPORT
    绑定本地连接到端口. See CURLOPT_LOCALPORT(3)
    CURLOPT_LOCALPORTRANGE
    绑定本地连接绑定到范围端口. See CURLOPT_LOCALPOR‐TRANGE(3)
    CURLOPT_DNS_CACHE_TIMEOUT
    DNS缓存超时. See CURLOPT_DNS_CACHE_TIMEOUT(3)
    CURLOPT_DNS_USE_GLOBAL_CACHE
    过时的使全局DNS缓存。See CUR‐LOPT_DNS_USE_GLOBAL_CACHE(3)
    CURLOPT_BUFFERSIZE
    要求较小的缓冲区大小. See CURLOPT_BUFFERSIZE(3)
    CURLOPT_PORT
    端口号连接到. See CURLOPT_PORT(3)
    CURLOPT_TCP_NODELAY
    禁用Nagle算法. See CURLOPT_TCP_NODELAY(3)
    CURLOPT_ADDRESS_SCOPE
    对于本地地址IPv6范围. See CURLOPT_ADDRESS_SCOPE(3)
    CURLOPT_TCP_KEEPALIVE
    启动持久连接(TCP keep-alive). See CURLOPT_TCP_KEEPALIVE(3)
    CURLOPT_TCP_KEEPIDLE
    发送前的空闲时间. See CURLOPT_TCP_KEEPIDLE(3)
    CURLOPT_TCP_KEEPINTVL
    保持活探针之间的间隔. See CURLOPT_TCP_KEEPINTVL(3)
    CURLOPT_UNIX_SOCKET_PATH
    一个Unix域套接字(socket)的路径. See CURLOPT_UNIX_SOCKET_PATH(3)
    名称和密码选项(身份验证)
    CURLOPT_NETRC
    使用.户配置脚本文件解析. See CURLOPT_NETRC(3)
    CURLOPT_NETRC_FILE
    .配置脚本文件名. See CURLOPT_NETRC_FILE(3)
    CURLOPT_USERPWD
    用户名和密码. See CURLOPT_USERPWD(3)
    CURLOPT_PROXYUSERPWD
    代理用户名和密码.See CURLOPT_PROXYUSERPWD(3)
    CURLOPT_USERNAME
    用户名. See CURLOPT_USERNAME(3)
    CURLOPT_PASSWORD
    密码. See CURLOPT_PASSWORD(3)
    CURLOPT_LOGIN_OPTIONS
    登陆选项. See CURLOPT_LOGIN_OPTIONS(3)
    CURLOPT_PROXYUSERNAME
    代理用户名. See CURLOPT_PROXYUSERNAME(3)
    CURLOPT_PROXYPASSWORD
    代理密码. See CURLOPT_PROXYPASSWORD(3)
    CURLOPT_HTTPAUTH
    HTTP服务器的身份验证方法. See CURLOPT_HTTPAUTH(3)
    CURLOPT_TLSAUTH_USERNAME
    TLS 验证用户名. See CURLOPT_TLSAUTH_USERNAME(3)
    CURLOPT_TLSAUTH_PASSWORD
    TLS 验证密码. See CURLOPT_TLSAUTH_PASSWORD(3)
    CURLOPT_TLSAUTH_TYPE
    TLS 身份验证方法. See CURLOPT_TLSAUTH_TYPE(3)
    CURLOPT_PROXYAUTH
    HTTP代理验证方法. See CURLOPT_PROXYAUTH(3)
    CURLOPT_SASL_IR
    使SASL的初始响应. See CURLOPT_SASL_IR(3)
    CURLOPT_XOAUTH2_BEARER
    OAuth2不记名令牌. See CURLOPT_XOAUTH2_BEARER(3)

    HTTP选项
    CURLOPT_AUTOREFERER
    自动设置参考;标题. See CURLOPT_AUTOREFERER(3)
    CURLOPT_ACCEPT_ENCODING
    接受编码和自动解压缩数据. See CUR‐LOPT_ACCEPT_ENCODING(3)
    CURLOPT_TRANSFER_ENCODING
    请求传输编码. See CURLOPT_TRANSFER_ENCODING(3)
    CURLOPT_FOLLOWLOCATION
    遵循HTTP重定向. See CURLOPT_FOLLOWLOCATION(3)
    CURLOPT_UNRESTRICTED_AUTH
    不限制对原始主机的身份验证. CURLOPT_UNRE‐STRICTED_AUTH(3)
    CURLOPT_MAXREDIRS
    跟随重定向的最大数量. See CURLOPT_MAXREDIRS(3)
    CURLOPT_POSTREDIR
    如何采取行动后的重定向POST. See CURLOPT_POSTREDIR(3)
    CURLOPT_PUT
    发出一个HTTP PUT请求. See CURLOPT_PUT(3)
    CURLOPT_POST
    发送一个HTTP POST要求. See CURLOPT_POST(3)
    CURLOPT_POSTFIELDS
    用这个数据发送一个POST. See CURLOPT_POSTFIELDS(3)
    CURLOPT_POSTFIELDSIZE
    如果你想发送数据POST到服务器没有libcurl做strlen()测量数据的大小,必须使用此选项。使用此选项时你可以把完全的二进制数据,否则可能会失败。如果这个大小设置为1,图书馆将使用strlen()得到尺寸. See CURLOPT_POSTFIELDSIZE(3)
    CURLOPT_POSTFIELDSIZE_LARGE
    如果你想发送数据POST到服务器没有libcurl做strlen()测量数据的大小,必须使用此选项。使用此选项时你可以把完全的二进制数据,否则可能会失败。如果这个大小设置为1,图书馆将使用strlen()得到尺寸. See CURLOPT_POSTFIELDSIZE_LARGE(3)
    CURLOPT_COPYPOSTFIELDS
    以POST的方式发送一段内容.See CURLOPT_COPYPOST‐FIELDS(3)
    CURLOPT_HTTPPOST
    多窗体发送HTTP POST. See CURLOPT_HTTPPOST(3)
    CURLOPT_REFERER
    引用:标头. See CURLOPT_REFERER(3)
    CURLOPT_USERAGENT
    用户代理:标头. See CURLOPT_USERAGENT(3)
    CURLOPT_HTTPHEADER
    自定义HTTP头.See CURLOPT_HTTPHEADER(3)
    CURLOPT_HEADEROPT
    控件自定义HTTP头. See CURLOPT_HEADEROPT(3)
    CURLOPT_PROXYHEADER
    自定义发送到代理的HTTP头. See CURLOPT_PROXYHEADER(3)
    CURLOPT_HTTP200ALIASES
    指定HTTP 200 OK备选匹配.See CURLOPT_HTTP200ALIASES(3)
    CURLOPT_COOKIE
    发送小文件. See CURLOPT_COOKIE(3)
    CURLOPT_COOKIEFILE
    从文件读取. See CURLOPT_COOKIEFILE(3)
    CURLOPT_COOKIEJAR
    向文件写入. See CURLOPT_COOKIEJAR(3)
    CURLOPT_COOKIESESSION
    开始一个新的cookie会话. See CURLOPT_COOKIESESSION(3)
    CURLOPT_COOKIELIST
    添加或控制cookies. See CURLOPT_COOKIELIST(3)
    CURLOPT_HTTPGET
    做一个HTTP GET请求.See CURLOPT_HTTPGET(3)
    CURLOPT_HTTP_VERSION
    HTTP版本的使用.CURLOPT_HTTP_VERSION(3)
    CURLOPT_IGNORE_CONTENT_LENGTH
    忽略内容长度(Content-Length). See CURLOPT_IGNORE_CONTENT_LENGTH(3)
    CURLOPT_HTTP_CONTENT_DECODING
    禁用Content(CSS的一种属性)译码. See CURLOPT_HTTP_CONTENT_DECODING(3)
    CURLOPT_HTTP_TRANSFER_DECODING
    禁用传输解码.See CURLOPT_HTTP_TRANSFER_DECODING(3)
    CURLOPT_EXPECT_100_TIMEOUT_MS
    客户端在发送POST数据给服务器前,征询服务器情况,看服务器是否处理POST的数据(100ms). See CURLOPT_EXPECT_100_TIMEOUT_MS(3)
    CURLOPT_PIPEWAIT
    等待连接到通道.See CURLOPT_PIPEWAIT(3)
    CURLOPT_STREAM_DEPENDS
    当前HTTP/2流取决于另一端. See CUR‐LOPT_STREAM_DEPENDS(3)
    CURLOPT_STREAM_DEPENDS_E
    当前HTTP/2流只取决于另一端. See CUR‐LOPT_STREAM_DEPENDS_E(3)
    CURLOPT_STREAM_WEIGHT
    设置HTTP/2流的重量. See CURLOPT_STREAM_WEIGHT(3)
    SMTP(简单邮件传输协议) OPTIONS
    CURLOPT_MAIL_FROM
    发件人地址. See CURLOPT_MAIL_FROM(3)
    一个指针传递给一个零结尾的字符串作为参数。这应该是用于发送libcurl的SMTP邮件时指定发件人的电子邮件地址。发起者的电子邮件地址应与尖括号(<>)周围,如果没有提供,将被自动添加指定。如果未指定该参数是一个空地址将被发送到这可能会导致邮件被拒绝的邮件服务器。
    CURLOPT_MAIL_RCPT
    邮件的收件人列表. See CURLOPT_MAIL_RCPT(3)
    一个指针传递到收件人的链表传递给服务器的smtp邮件的请求。链表应该是一个完全有效的列表结构curl_slist结构正确填写。使用curl_slist_append创建列表和curl_slist_free_all清理整个列表。
    CURLOPT_MAIL_AUTH
    证书地址. See CURLOPT_MAIL_AUTH(3)
    TFTP选择
    CURLOPT_TFTP_BLKSIZE
    TFTP block size. See CURLOPT_TFTP_BLKSIZE(3)

    FTP OPTIONS
    CURLOPT_FTPPORT
    使用主动FTP. See CURLOPT_FTPPORT(3)
    CURLOPT_QUOTE
    传输前运行的命令. See CURLOPT_QUOTE(3)
    CURLOPT_POSTQUOTE
    传输后运行命令. See CURLOPT_POSTQUOTE(3)
    CURLOPT_PREQUOTE
    命令在传输之前运行. See CURLOPT_PREQUOTE(3)
    CURLOPT_APPEND
    附加到远程文件. See CURLOPT_APPEND(3)
    设置这个选项为一个非零值,PHP将应用远程文件代替覆盖它
    CURLOPT_FTP_USE_EPRT
    启用FTP /禁止使用EPRT的. See CURLOPT_FTP_USE_EPRT(3)
    CURLOPT_FTP_USE_EPSV
    启用/禁用使用的EPSV. See CURLOPT_FTP_USE_EPSV(3)
    CURLOPT_FTP_USE_PRET
    使PRET命令. See CURLOPT_FTP_USE_PRET(3)
    CURLOPT_FTP_CREATE_MISSING_DIRS
    选项可以在上传时在目标机创建新目录(如果该目录不存在). See CUR‐LOPT_FTP_CREATE_MISSING_DIRS(3)
    CURLOPT_FTP_RESPONSE_TIMEOUT
    FTP响应超时. See CURLOPT_FTP_RESPONSE_TIMEOUT(3)
    CURLOPT_FTP_ALTERNATIVE_TO_USER
    替代用户. See CURLOPT_FTP_ALTERNATIVE_TO_USER(3)
    CURLOPT_FTP_SKIP_PASV_IP
    忽略在PASV响应的IP地址. See CUR‐LOPT_FTP_SKIP_PASV_IP(3)
    CURLOPT_FTPSSLAUTH
    控制如何做TLS. See CURLOPT_FTPSSLAUTH(3)
    CURLOPT_FTP_SSL_CCC
    再次回到非TLS认证后. See CUR‐LOPT_FTP_SSL_CCC(3)
    CURLOPT_FTP_ACCOUNT
    为FTP设置帐户信息. See CURLOPT_FTP_ACCOUNT(3)
    一个指针传递给一个零结尾的字符串(或NULL以禁用)。当FTP服务器请求已提供的用户名和密码后,“帐户数据”,此数据是使用ACCT命令被红牌罚下。
    CURLOPT_FTP_FILEMETHOD
    指定如何到达文件. See CURLOPT_FTP_FILEMETHOD(3)
    RTSP选择
    CURLOPT_RTSP_REQUEST
    指定RTSP请求. See CURLOPT_RTSP_REQUEST(3)
    CURLOPT_RTSP_SESSION_ID
    设置RTSP会话ID. See CURLOPT_RTSP_SESSION_ID(3)
    CURLOPT_RTSP_STREAM_URI
    RTSP流URI集. See CURLOPT_RTSP_STREAM_URI(3)
    CURLOPT_RTSP_TRANSPORT
    RTSP传输: header. See CURLOPT_RTSP_TRANSPORT(3)
    CURLOPT_RTSP_CLIENT_CSEQ
    设置RTSP客户端的CSEQ号. See CURLOPT_RTSP_CLIENT_CSEQ(3)
    CURLOPT_RTSP_SERVER_CSEQ
    CSEQ信号的RTSP服务器->客户端请求. See CUR‐LOPT_RTSP_SERVER_CSEQ(3)
    协议选项
    CURLOPT_TRANSFERTEXT
    使用文本传输. See CURLOPT_TRANSFERTEXT(3)
    CURLOPT_PROXY_TRANSFER_MODE
    通过添加传输模式到代理服务器上的网址. See CURLOPT_PROXY_TRANS‐FER_MODE(3)
    CURLOPT_CRLF
    启用/禁用CRLF转换. See CURLOPT_CRLF(3)
    经过很长。如果该值设置为1(一),转换的libcurl unix的换行符crlf对转让换行符。通过将该值设置为0(零)再次关闭此选项。 这是值得商榷使用的传统的选项。
    CURLOPT_RANGE
    设置字节范围请求. See CURLOPT_RANGE(3)5
    CURLOPT_RESUME_FROM
    恢复传输. See CURLOPT_RESUME_FROM(3)
    CURLOPT_RESUME_FROM_LARGE
    恢复传输. See CURLOPT_RESUME_FROM_LARGE(3)
    CURLOPT_CUSTOMREQUEST
    自定义请求/方法. See CURLOPT_CUSTOMREQUEST(3)
    CURLOPT_FILETIME
    请求文件修改日期和时间. See CURLOPT_FILETIME(3)
    CURLOPT_DIRLISTONLY
    只有在目录列表中索要名称. See CURLOPT_DIRLISTONLY(3)
    CURLOPT_NOBODY
    不获取身体内容. See CURLOPT_NOBODY(3)
    CURLOPT_INFILESIZE
    发送的文件大小. CURLOPT_INFILESIZE(3)
    CURLOPT_INFILESIZE_LARGE
    发送的文件大小. CURLOPT_INFILESIZE_LARGE(3)
    CURLOPT_UPLOAD
    上载数据. See CURLOPT_UPLOAD(3)
    CURLOPT_MAXFILESIZE
    允许下载的最大文件大小. See CURLOPT_MAXFILESIZE(3)
    CURLOPT_MAXFILESIZE_LARGE
    允许下载的最大文件大小. See CURLOPT_MAXFILESIZE_LARGE(3)
    CURLOPT_TIMECONDITION
    做一个时间条件请求. See CURLOPT_TIMECONDITION(3)
    CURLOPT_TIMEVALUE
    时间条件请求的时间值. See CUR‐LOPT_TIMEVALUE(3)
    连接选项
    CURLOPT_TIMEOUT
    整个请求的超时时间(s).See CURLOPT_TIMEOUT(3)
    CURLOPT_TIMEOUT_MS
    整个请求的超时时间(ms).See CURLOPT_TIME‐OUT_MS(3)
    CURLOPT_LOW_SPEED_LIMIT
    低限速中止传输.See CUR‐LOPT_LOW_SPEED_LIMIT(3)
    CURLOPT_LOW_SPEED_TIME
    时间低于速度触发低速中止. See CUR‐LOPT_LOW_SPEED_TIME(3)
    CURLOPT_MAX_SEND_SPEED_LARGE
    上限上传速度. See CUR‐LOPT_MAX_SEND_SPEED_LARGE(3)
    CURLOPT_MAX_RECV_SPEED_LARGE
    下载速度上限. See CUR‐LOPT_MAX_RECV_SPEED_LARGE(3)
    CURLOPT_MAXCONNECTS
    连接池中的最大连接数. See CUR‐LOPT_MAXCONNECTS(3)
    CURLOPT_FRESH_CONNECT
    使用一个新的连接. CURLOPT_FRESH_CONNECT(3)
    CURLOPT_FORBID_REUSE
    防止随后重新连接. See CUR‐LOPT_FORBID_REUSE(3)
    CURLOPT_CONNECTTIMEOUT
    连接阶段的超时(m). See CURLOPT_CONNECTTIMEOUT(3)
    CURLOPT_CONNECTTIMEOUT_MS
    连接阶段的超时(ms). See CURLOPT_CON‐NECTTIMEOUT_MS(3)
    CURLOPT_IPRESOLVE
    IP版本解决. See CURLOPT_IPRESOLVE(3)
    CURLOPT_CONNECT_ONLY
    只有连接,没有别的. See CURLOPT_CONNECT_ONLY(3)
    CURLOPT_USE_SSL
    使用TLS / SSL. See CURLOPT_USE_SSL(3)
    CURLOPT_RESOLVE
    提供自定义主机名到IP地址的解析. See CURLOPT_RESOLVE(3)
    CURLOPT_DNS_INTERFACE
    绑定名称解析到这个接口. See CURLOPT_DNS_INTER‐FACE(3)
    CURLOPT_DNS_LOCAL_IP4
    绑定名称解析到这个IP4地址. See CUR‐LOPT_DNS_LOCAL_IP4(3)
    CURLOPT_DNS_LOCAL_IP6
    绑定名称解析到这个IP6地址. See CUR‐LOPT_DNS_LOCAL_IP6(3)
    CURLOPT_DNS_SERVERS
    首选DNS服务器. See CURLOPT_DNS_SERVERS(3)
    CURLOPT_ACCEPTTIMEOUT_MS
    等待服务器的连接被接受的超时(ms). See CURLOPT_ACCEPTTIMEOUT_MS(3)
    SSL和安全选项
    CURLOPT_SSLCERT
    客户端证书. See CURLOPT_SSLCERT(3)
    CURLOPT_SSLCERTTYPE
    客户端证书类型. See CURLOPT_SSLCERTTYPE(3)
    CURLOPT_SSLKEY
    客户端钥匙. See CURLOPT_SSLKEY(3)
    CURLOPT_SSLKEYTYPE
    客户端钥匙类型. See CURLOPT_SSLKEYTYPE(3)
    CURLOPT_KEYPASSWD
    客户端钥匙密码. See CURLOPT_KEYPASSWD(3)
    CURLOPT_SSL_ENABLE_ALPN
    启用ALPN. See CURLOPT_SSL_ENABLE_ALPN(3)
    CURLOPT_SSL_ENABLE_NPN
    启用NPN. See CURLOPT_SSL_ENABLE_NPN(3)
    CURLOPT_SSLENGINE
    使用SSL引擎标识符. See CURLOPT_SSLENGINE(3)
    CURLOPT_SSLENGINE_DEFAULT
    默认的SSL引擎. See CURLOPT_SSLENGINE_DEFAULT(3)
    CURLOPT_SSL_FALSESTART
    启用TLS抢跑.See CURLOPT_SSL_FALSESTART(3)
    CURLOPT_SSLVERSION
    SSL版本使用.See CURLOPT_SSLVERSION(3)
    CURLOPT_SSL_VERIFYHOST
    验证的主机名SSL证书.See CUR‐LOPT_SSL_VERIFYHOST(3)
    CURLOPT_SSL_VERIFYPEER
    验证SSL证书. See CURLOPT_SSL_VERIFYPEER(3)
    CURLOPT_SSL_VERIFYSTATUS
    验证SSL证书的状态.See CURLOPT_SSL_VERIFYSTA‐TUS(3)
    CURLOPT_CAINFO
    捆绑的CA证书. See CURLOPT_CAINFO(3)
    CURLOPT_ISSUERCERT
    发行者证书. See CURLOPT_ISSUERCERT(3)
    CURLOPT_CAPATH
    捆绑的CA证书路径. See CURLOPT_CAPATH(3)
    CURLOPT_CRLFILE
    证书吊销列表. See CURLOPT_CRLFILE(3)
    CURLOPT_CERTINFO
    提取证书信息. See CURLOPT_CERTINFO(3)
    CURLOPT_PINNEDPUBLICKEY
    设置固定的SSL密钥. See CURLOPT_PINNEDPUBLICKEY(3)
    CURLOPT_RANDOM_FILE
    指定一个随机的数据源.See CURLOPT_RAN‐DOM_FILE(3)
    CURLOPT_EGDSOCKET
    点对点(EGD)套接字(socket)的路径. See CURLOPT_EGDSOCKET(3)
    CURLOPT_SSL_CIPHER_LIST
    使用密码. See CURLOPT_SSL_CIPHER_LIST(3)
    CURLOPT_SSL_SESSIONID_CACHE
    禁用SSL会话ID缓存.See CURLOPT_SSL_SESSIONID_CACHE(3)
    CURLOPT_SSL_OPTIONS
    SSL行为控制.See CURLOPT_SSL_OPTIONS(3)
    CURLOPT_KRBLEVEL
    Kerberos安全水平.See CURLOPT_KRBLEVEL(3)
    CURLOPT_GSSAPI_DELEGATION
    禁用GSS-API授权.See CURLOPT_GSSAPI_DELEGATION(3)
    SSH选择
    CURLOPT_SSH_AUTH_TYPES
    SSH认证类型. See CURLOPT_SSH_AUTH_TYPES(3)
    CURLOPT_SSH_HOST_PUBLIC_KEY_MD5
    MD5的主机的公钥.See CURLOPT_SSH_HOST_PUBLIC_KEY_MD5(3)
    CURLOPT_SSH_PUBLIC_KEYFILE
    公共密钥的文件名. See CURLOPT_SSH_PUBLIC_KEYFILE(3)
    CURLOPT_SSH_PRIVATE_KEYFILE
    私有密匙的文件名. See CURLOPT_SSH_PRIVATE_KEYFILE(3)
    CURLOPT_SSH_KNOWNHOSTS
    已知主机的文件名. See CURLOPT_SSH_KNOWNHOSTS(3)
    CURLOPT_SSH_KEYFUNCTION
    回调已知主机处理. See CURLOPT_SSH_KEYFUNC‐TION(3)
    CURLOPT_SSH_KEYDATA
    自定义指针通过ssh钥匙的回调. See CURLOPT_SSH_KEY‐DATA(3)
    其他选项
    CURLOPT_PRIVATE
    专用指针存储. See CURLOPT_PRIVATE(3)
    CURLOPT_SHARE
    共享对象使用. See CURLOPT_SHARE(3)
    CURLOPT_NEW_FILE_PERMS
    创建新远程文件的模式. See CUR‐LOPT_NEW_FILE_PERMS(3)
    CURLOPT_NEW_DIRECTORY_PERMS
    创建新的远程目录的模式. See CURLOPT_NEW_DIREC‐TORY_PERMS(3)

    远程登录选项
    CURLOPT_TELNETOPTIONS
    远程登录选项. See CURLOPT_TELNETOPTIONS(3)

    返回值
    CURLE_OK (零)意味着选择了正确的选项, 非零意味着错误发生是<curl/curl.h>定义.详情请见libcurl-errors(3) 操作说明有完整的列表.
    如果你试图设置一个libcurl的不知道的选项,也许是因为说明手册太老的支持或选择在最近的版本中删除,该函数将返回curle_unknown_option。如果参数不真确在编译时,它将返回curle_not_built_in。

    范例
    CURL *curl = curl_easy_init();
    if(curl) {
    CURLcode res;
    curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
    res = curl_easy_perform(curl);
    curl_easy_cleanup(curl);
    }

    请参阅
    curl_easy_init(3), curl_easy_cleanup(3), curl_easy_reset(3),curl_easy_getinfo(3), curl_multi_setopt(3),

    libcurl 7.38.0               25 Jun 2014                 curl_easy_setopt(3)

    英文原文:

      1 curl_easy_setopt(3)             libcurl Manual             curl_easy_setopt(3)
      2 
      3 NAME
      4        curl_easy_setopt - set options for a curl easy handle
      5 
      6 SYNOPSIS
      7        #include <curl/curl.h>
      8 
      9        CURLcode curl_easy_setopt(CURL *handle, CURLoption option, parameter);
     10 
     11 DESCRIPTION
     12        curl_easy_setopt(3)  is  used to tell libcurl how to behave. By setting the appropriate options, the application can change libcurl's behavior. All options are set with an option followed by a parameter. That param‐ eter can be a  long,  a  function  pointer,  an  object  pointer  or  a curl_off_t,  depending  on  what the specific option expects. Read this manual carefully as bad input values may cause libcurl to behave badly! You  can  only set one option in each function call. A typical applica‐ tion uses many curl_easy_setopt(3) calls in the setup phase.
     13 
     14        Options set with this function  call  are  valid  for  all  forthcoming transfers  performed using this handle.  The options are not in any way reset between transfers, so if you want subsequent transfers with  dif‐ ferent  options,  you  must  change them between the transfers. You can optionally  reset  all  options   back   to   internal   default   with curl_easy_reset(3).
     15 
     16        Strings  passed  to  libcurl  as  'char *' arguments, are copied by the library; thus the string storage associated to the pointer argument may be overwritten after curl_easy_setopt(3) returns. The only exception to this rule is really CURLOPT_POSTFIELDS(3),  but  the  alternative  that copies the string CURLOPT_COPYPOSTFIELDS(3) has some usage characteris‐ tics you need to read up on.
     17 
     18        The order in which the options are set does not matter.
     19 
     20        Before version 7.17.0, strings were not copied. Instead  the  user  was forced keep them available until libcurl no longer needed them.
     21 
     22        The   handle   is   the   return   code  from  a  curl_easy_init(3)  or curl_easy_duphandle(3) call.
     23 
     24 BEHAVIOR OPTIONS
     25        CURLOPT_VERBOSE
     26               Display verbose information. See CURLOPT_VERBOSE(3)
     27 
     28        CURLOPT_HEADER
     29               Include the header in the body output. See CURLOPT_HEADER(3)
     30 
     31        CURLOPT_NOPROGRESS
     32               Shut off the progress meter. See CURLOPT_NOPROGRESS(3)
     33 
     34        CURLOPT_NOSIGNAL
     35               Do not install signal handlers. See CURLOPT_NOSIGNAL(3)
     36 
     37        CURLOPT_WILDCARDMATCH
     38               Transfer multiple files according to a file  name  pattern.  See CURLOPT_WILDCARDMATCH(3)
     39 
     40 CALLBACK OPTIONS
     41        CURLOPT_WRITEFUNCTION
     42               Callback for writing data. See CURLOPT_WRITEFUNCTION(3)
     43 
     44        CURLOPT_WRITEDATA
     45               Data  pointer  to pass to the write callback. See CURLOPT_WRITE‐ DATA(3)
     46 
     47        CURLOPT_READFUNCTION
     48               Callback for reading data. See CURLOPT_READFUNCTION(3)
     49 
     50        CURLOPT_READDATA
     51               Data pointer to pass to the  read  callback.  See  CURLOPT_READ‐DATA(3)
     52 
     53        CURLOPT_IOCTLFUNCTION
     54               Callback for I/O operations. See CURLOPT_IOCTLFUNCTION(3)
     55 
     56        CURLOPT_IOCTLDATA
     57               Data  pointer  to  pass  to the I/O callback. See CURLOPT_IOCTL‐DATA(3)
     58 
     59        CURLOPT_SEEKFUNCTION
     60               Callback for seek operations. See CURLOPT_SEEKFUNCTION(3)
     61 
     62        CURLOPT_SEEKDATA
     63               Data pointer to pass to the  seek  callback.  See  CURLOPT_SEEK‐DATA(3)
     64 
     65        CURLOPT_SOCKOPTFUNCTION
     66               Callback for sockopt operations. See CURLOPT_SOCKOPTFUNCTION(3)
     67 
     68        CURLOPT_SOCKOPTDATA
     69               Data  pointer to pass to the sockopt callback. See CURLOPT_SOCK‐OPTDATA(3)
     70 
     71        CURLOPT_OPENSOCKETFUNCTION
     72               Callback for socket creation. See CURLOPT_OPENSOCKETFUNCTION(3)
     73 
     74        CURLOPT_OPENSOCKETDATA
     75               Data pointer to pass to  the  open  socket  callback.  See  CUR‐LOPT_OPENSOCKETDATA(3)
     76 
     77        CURLOPT_CLOSESOCKETFUNCTION
     78               Callback for closing socket. See CURLOPT_CLOSESOCKETFUNCTION(3)
     79 
     80        CURLOPT_CLOSESOCKETDATA
     81               Data  pointer  to  pass  to  the close socket callback. See CUR‐LOPT_CLOSESOCKETDATA(3)
     82 
     83        CURLOPT_PROGRESSFUNCTION
     84               OBSOLETE callback for progress meter. See  CURLOPT_PROGRESSFUNC‐TION(3)
     85 
     86        CURLOPT_PROGRESSDATA
     87               Data  pointer  to  pass to the progress meter callback. See CUR‐LOPT_PROGRESSDATA(3)
     88 
     89        CURLOPT_XFERINFOFUNCTION
     90               Callback for progress meter. See CURLOPT_XFERINFOFUNCTION(3)
     91 
     92        CURLOPT_XFERINFODATA
     93               Data pointer to pass to the progress meter  callback.  See  CUR‐LOPT_XFERINFODATA(3)
     94 
     95        CURLOPT_HEADERFUNCTION
     96               Callback  for  writing received headers. See CURLOPT_HEADERFUNC‐TION(3)
     97 
     98        CURLOPT_HEADERDATA
     99               Data pointer to pass to the header callback. See CURLOPT_HEADER‐DATA(3)
    100 
    101        CURLOPT_DEBUGFUNCTION
    102               Callback for debug information. See CURLOPT_DEBUGFUNCTION(3)
    103 
    104        CURLOPT_DEBUGDATA
    105               Data  pointer  to pass to the debug callback. See CURLOPT_DEBUG‐
    106               DATA(3)
    107 
    108        CURLOPT_SSL_CTX_FUNCTION
    109               Callback for SSL context logic. See CURLOPT_SSL_CTX_FUNCTION(3)
    110 
    111        CURLOPT_SSL_CTX_DATA
    112               Data pointer to pass to  the  SSL  context  callback.  See  CUR‐LOPT_SSL_CTX_DATA(3)
    113 
    114        CURLOPT_CONV_TO_NETWORK_FUNCTION
    115               Callback  for  code  base  conversion.  See CURLOPT_CONV_TO_NET‐WORK_FUNCTION(3)
    116 
    117        CURLOPT_CONV_FROM_NETWORK_FUNCTION
    118               Callback for code base  conversion.  See  CURLOPT_CONV_FROM_NET‐WORK_FUNCTION(3)
    119 
    120        CURLOPT_CONV_FROM_UTF8_FUNCTION
    121               Callback     for     code     base    conversion.    See    CUR‐LOPT_CONV_FROM_UTF8_FUNCTION(3)
    122 
    123        CURLOPT_INTERLEAVEFUNCTION
    124               Callback for RTSP interleaved data. See  CURLOPT_INTERLEAVEFUNC‐TION(3)
    125 
    126        CURLOPT_INTERLEAVEDATA
    127               Data  pointer  to pass to the RTSP interleave callback. See CUR‐LOPT_INTERLEAVEDATA(3)
    128 
    129        CURLOPT_CHUNK_BGN_FUNCTION
    130               Callback  for  wildcard  download  start  of  chunk.  See   CUR‐LOPT_CHUNK_BGN_FUNCTION(3)
    131 
    132        CURLOPT_CHUNK_END_FUNCTION
    133               Callback   for   wildcard   download  end  of  chunk.  See  CUR‐LOPT_CHUNK_END_FUNCTION(3)
    134 
    135        CURLOPT_CHUNK_DATA
    136               Data  pointer  to  pass  to  the  chunk  callbacks.   See   CUR‐LOPT_CHUNK_DATA(3)
    137 
    138        CURLOPT_FNMATCH_FUNCTION
    139               Callback for wildcard matching. See CURLOPT_FNMATCH_FUNCTION(3)
    140 
    141        CURLOPT_FNMATCH_DATA
    142               Data pointer to pass to the wildcard matching callback. See CUR‐LOPT_FNMATCH_DATA(3)
    143 
    144 ERROR OPTIONS
    145        CURLOPT_ERRORBUFFER
    146               Error message buffer. See CURLOPT_ERRORBUFFER(3)
    147 
    148        CURLOPT_STDERR
    149               stderr replacement stream. See CURLOPT_STDERR(3)
    150 
    151        CURLOPT_FAILONERROR
    152               Fail on HTTP 4xx errors. CURLOPT_FAILONERROR(3)
    153 
    154 NETWORK OPTIONS
    155        CURLOPT_URL
    156               URL to work on. See CURLOPT_URL(3)
    157 
    158        CURLOPT_PATH_AS_IS
    159               Disable squashing /../ and /./ sequences in the path.  See  CUR‐LOPT_PATH_AS_IS(3)
    160 
    161        CURLOPT_PROTOCOLS
    162               Allowed protocols. See CURLOPT_PROTOCOLS(3)
    163 
    164        CURLOPT_REDIR_PROTOCOLS
    165               Protocols to allow redirects to. See CURLOPT_REDIR_PROTOCOLS(3)
    166 
    167        CURLOPT_DEFAULT_PROTOCOL
    168               Default protocol. See CURLOPT_DEFAULT_PROTOCOL(3)
    169 
    170        CURLOPT_PROXY
    171               Proxy to use. See CURLOPT_PROXY(3)
    172 
    173        CURLOPT_PROXYPORT
    174               Proxy port to use. See CURLOPT_PROXYPORT(3)
    175 
    176        CURLOPT_PROXYTYPE
    177               Proxy type. See CURLOPT_PROXYTYPE(3)
    178 
    179        CURLOPT_NOPROXY
    180               Filter out hosts from proxy use. CURLOPT_NOPROXY(3)
    181 
    182        CURLOPT_HTTPPROXYTUNNEL
    183               Tunnel through the HTTP proxy. CURLOPT_HTTPPROXYTUNNEL(3)
    184 
    185        CURLOPT_SOCKS5_GSSAPI_SERVICE
    186               Socks5 GSSAPI service name. CURLOPT_SOCKS5_GSSAPI_SERVICE(3)
    187 
    188        CURLOPT_SOCKS5_GSSAPI_NEC
    189               Socks5 GSSAPI NEC mode. See CURLOPT_SOCKS5_GSSAPI_NEC(3)
    190 
    191        CURLOPT_PROXY_SERVICE_NAME
    192               Proxy service name. CURLOPT_PROXY_SERVICE_NAME(3)
    193 
    194        CURLOPT_SERVICE_NAME
    195               SPNEGO service name. CURLOPT_SERVICE_NAME(3)
    196 
    197        CURLOPT_INTERFACE
    198               Bind connection locally to this. See CURLOPT_INTERFACE(3)
    199 
    200        CURLOPT_LOCALPORT
    201               Bind connection locally to this port. See CURLOPT_LOCALPORT(3)
    202 
    203        CURLOPT_LOCALPORTRANGE
    204               Bind  connection  locally  to  port range. See CURLOPT_LOCALPOR‐TRANGE(3)
    205 
    206        CURLOPT_DNS_CACHE_TIMEOUT
    207               Timeout for DNS cache. See CURLOPT_DNS_CACHE_TIMEOUT(3)
    208 
    209        CURLOPT_DNS_USE_GLOBAL_CACHE
    210               OBSOLETE    Enable    global     DNS     cache.     See     CUR‐LOPT_DNS_USE_GLOBAL_CACHE(3)
    211 
    212        CURLOPT_BUFFERSIZE
    213               Ask for smaller buffer size. See CURLOPT_BUFFERSIZE(3)
    214 
    215        CURLOPT_PORT
    216               Port number to connect to. See CURLOPT_PORT(3)
    217 
    218        CURLOPT_TCP_NODELAY
    219               Disable the Nagle algorithm. See CURLOPT_TCP_NODELAY(3)
    220 
    221        CURLOPT_ADDRESS_SCOPE
    222               IPv6 scope for local addresses. See CURLOPT_ADDRESS_SCOPE(3)
    223 
    224        CURLOPT_TCP_KEEPALIVE
    225               Enable TCP keep-alive. See CURLOPT_TCP_KEEPALIVE(3)
    226 
    227        CURLOPT_TCP_KEEPIDLE
    228               Idle time before sending keep-alive. See CURLOPT_TCP_KEEPIDLE(3)
    229 
    230        CURLOPT_TCP_KEEPINTVL
    231               Interval between keep-alive probes. See CURLOPT_TCP_KEEPINTVL(3)
    232 
    233        CURLOPT_UNIX_SOCKET_PATH
    234               Path to a Unix domain socket. See CURLOPT_UNIX_SOCKET_PATH(3)
    235 
    236 NAMES and PASSWORDS OPTIONS (Authentication)
    237        CURLOPT_NETRC
    238               Enable .netrc parsing. See CURLOPT_NETRC(3)
    239 
    240        CURLOPT_NETRC_FILE
    241               .netrc file name. See CURLOPT_NETRC_FILE(3)
    242 
    243        CURLOPT_USERPWD
    244               User name and password. See CURLOPT_USERPWD(3)
    245 
    246        CURLOPT_PROXYUSERPWD
    247               Proxy user name and password. See CURLOPT_PROXYUSERPWD(3)
    248 
    249        CURLOPT_USERNAME
    250               User name. See CURLOPT_USERNAME(3)
    251 
    252        CURLOPT_PASSWORD
    253               Password. See CURLOPT_PASSWORD(3)
    254 
    255        CURLOPT_LOGIN_OPTIONS
    256               Login options. See CURLOPT_LOGIN_OPTIONS(3)
    257 
    258        CURLOPT_PROXYUSERNAME
    259               Proxy user name. See CURLOPT_PROXYUSERNAME(3)
    260 
    261        CURLOPT_PROXYPASSWORD
    262               Proxy password. See CURLOPT_PROXYPASSWORD(3)
    263 
    264        CURLOPT_HTTPAUTH
    265               HTTP server authentication methods. See CURLOPT_HTTPAUTH(3)
    266 
    267        CURLOPT_TLSAUTH_USERNAME
    268               TLS authentication user name. See CURLOPT_TLSAUTH_USERNAME(3)
    269 
    270        CURLOPT_TLSAUTH_PASSWORD
    271               TLS authentication password. See CURLOPT_TLSAUTH_PASSWORD(3)
    272 
    273        CURLOPT_TLSAUTH_TYPE
    274               TLS authentication methods. See CURLOPT_TLSAUTH_TYPE(3)
    275 
    276        CURLOPT_PROXYAUTH
    277               HTTP proxy authentication methods. See CURLOPT_PROXYAUTH(3)
    278 
    279        CURLOPT_SASL_IR
    280               Enable SASL initial response. See CURLOPT_SASL_IR(3)
    281 
    282        CURLOPT_XOAUTH2_BEARER
    283               OAuth2 bearer token. See CURLOPT_XOAUTH2_BEARER(3)
    284 
    285 HTTP OPTIONS
    286        CURLOPT_AUTOREFERER
    287               Automatically set Referer: header. See CURLOPT_AUTOREFERER(3)
    288 
    289        CURLOPT_ACCEPT_ENCODING
    290               Accept-Encoding  and  automatic  decompressing  data.  See  CUR‐LOPT_ACCEPT_ENCODING(3)
    291 
    292        CURLOPT_TRANSFER_ENCODING
    293               Request Transfer-Encoding. See CURLOPT_TRANSFER_ENCODING(3)
    294 
    295        CURLOPT_FOLLOWLOCATION
    296               Follow HTTP redirects. See CURLOPT_FOLLOWLOCATION(3)
    297 
    298        CURLOPT_UNRESTRICTED_AUTH
    299               Do not restrict authentication to original  host.  CURLOPT_UNRE‐STRICTED_AUTH(3)
    300 
    301        CURLOPT_MAXREDIRS
    302               Maximum number of redirects to follow. See CURLOPT_MAXREDIRS(3)
    303 
    304        CURLOPT_POSTREDIR
    305               How to act on redirects after POST. See CURLOPT_POSTREDIR(3)
    306 
    307        CURLOPT_PUT
    308               Issue a HTTP PUT request. See CURLOPT_PUT(3)
    309 
    310        CURLOPT_POST
    311               Issue a HTTP POST request. See CURLOPT_POST(3)
    312 
    313        CURLOPT_POSTFIELDS
    314               Send a POST with this data. See CURLOPT_POSTFIELDS(3)
    315 
    316        CURLOPT_POSTFIELDSIZE
    317               The POST data is this big. See CURLOPT_POSTFIELDSIZE(3)
    318 
    319        CURLOPT_POSTFIELDSIZE_LARGE
    320               The POST data is this big. See CURLOPT_POSTFIELDSIZE_LARGE(3)
    321 
    322        CURLOPT_COPYPOSTFIELDS
    323               Send  a POST with this data - and copy it. See CURLOPT_COPYPOST‐FIELDS(3)
    324 
    325        CURLOPT_HTTPPOST
    326               Multipart formpost HTTP POST. See CURLOPT_HTTPPOST(3)
    327 
    328        CURLOPT_REFERER
    329               Referer: header. See CURLOPT_REFERER(3)
    330 
    331        CURLOPT_USERAGENT
    332               User-Agent: header. See CURLOPT_USERAGENT(3)
    333 
    334        CURLOPT_HTTPHEADER
    335               Custom HTTP headers. See CURLOPT_HTTPHEADER(3)
    336 
    337        CURLOPT_HEADEROPT
    338               Control custom headers. See CURLOPT_HEADEROPT(3)
    339 
    340        CURLOPT_PROXYHEADER
    341               Custom HTTP headers sent to proxy. See CURLOPT_PROXYHEADER(3)
    342 
    343        CURLOPT_HTTP200ALIASES
    344               Alternative versions of 200 OK. See CURLOPT_HTTP200ALIASES(3)
    345 
    346        CURLOPT_COOKIE
    347               Cookie(s) to send. See CURLOPT_COOKIE(3)
    348 
    349        CURLOPT_COOKIEFILE
    350               File to read cookies from. See CURLOPT_COOKIEFILE(3)
    351 
    352        CURLOPT_COOKIEJAR
    353               File to write cookies to. See CURLOPT_COOKIEJAR(3)
    354 
    355        CURLOPT_COOKIESESSION
    356               Start a new cookie session. See CURLOPT_COOKIESESSION(3)
    357 
    358        CURLOPT_COOKIELIST
    359               Add or control cookies. See CURLOPT_COOKIELIST(3)
    360 
    361        CURLOPT_HTTPGET
    362               Do a HTTP GET request. See CURLOPT_HTTPGET(3)
    363 
    364        CURLOPT_HTTP_VERSION
    365               HTTP version to use. CURLOPT_HTTP_VERSION(3)
    366 
    367        CURLOPT_IGNORE_CONTENT_LENGTH
    368               Ignore Content-Length. See CURLOPT_IGNORE_CONTENT_LENGTH(3)
    369 
    370        CURLOPT_HTTP_CONTENT_DECODING
    371               Disable Content decoding. See CURLOPT_HTTP_CONTENT_DECODING(3)
    372 
    373        CURLOPT_HTTP_TRANSFER_DECODING
    374               Disable Transfer decoding. See CURLOPT_HTTP_TRANSFER_DECODING(3)
    375 
    376        CURLOPT_EXPECT_100_TIMEOUT_MS
    377               100-continue timeout. See CURLOPT_EXPECT_100_TIMEOUT_MS(3)
    378 
    379        CURLOPT_PIPEWAIT
    380               Wait on connection to pipeline on it. See CURLOPT_PIPEWAIT(3)
    381 
    382        CURLOPT_STREAM_DEPENDS
    383               This   HTTP/2   stream   depends   on    another.    See    CUR‐LOPT_STREAM_DEPENDS(3)
    384 
    385        CURLOPT_STREAM_DEPENDS_E
    386               This  HTTP/2  stream  depends  on  another exclusively. See CUR‐LOPT_STREAM_DEPENDS_E(3)
    387 
    388        CURLOPT_STREAM_WEIGHT
    389               Set this HTTP/2 stream's weight. See CURLOPT_STREAM_WEIGHT(3)
    390 
    391 SMTP OPTIONS
    392        CURLOPT_MAIL_FROM
    393               Address of the sender. See CURLOPT_MAIL_FROM(3)
    394 
    395        CURLOPT_MAIL_RCPT
    396               Address of the recipients. See CURLOPT_MAIL_RCPT(3)
    397 
    398        CURLOPT_MAIL_AUTH
    399               Authentication address. See CURLOPT_MAIL_AUTH(3)
    400 
    401 TFTP OPTIONS
    402        CURLOPT_TFTP_BLKSIZE
    403               TFTP block size. See CURLOPT_TFTP_BLKSIZE(3)
    404 
    405 FTP OPTIONS
    406        CURLOPT_FTPPORT
    407               Use active FTP. See CURLOPT_FTPPORT(3)
    408 
    409        CURLOPT_QUOTE
    410               Commands to run before transfer. See CURLOPT_QUOTE(3)
    411 
    412        CURLOPT_POSTQUOTE
    413               Commands to run after transfer. See CURLOPT_POSTQUOTE(3)
    414 
    415        CURLOPT_PREQUOTE
    416               Commands to run just before transfer. See CURLOPT_PREQUOTE(3)
    417 
    418        CURLOPT_APPEND
    419               Append to remote file. See CURLOPT_APPEND(3)
    420 
    421        CURLOPT_FTP_USE_EPRT
    422               Use EPTR. See CURLOPT_FTP_USE_EPRT(3)
    423 
    424        CURLOPT_FTP_USE_EPSV
    425               Use EPSV. See CURLOPT_FTP_USE_EPSV(3)
    426 
    427        CURLOPT_FTP_USE_PRET
    428               Use PRET. See CURLOPT_FTP_USE_PRET(3)
    429 
    430        CURLOPT_FTP_CREATE_MISSING_DIRS
    431               Create missing  directories  on  the  remote  server.  See  CUR‐LOPT_FTP_CREATE_MISSING_DIRS(3)
    432 
    433        CURLOPT_FTP_RESPONSE_TIMEOUT
    434               Timeout for FTP responses. See CURLOPT_FTP_RESPONSE_TIMEOUT(3)
    435 
    436        CURLOPT_FTP_ALTERNATIVE_TO_USER
    437               Alternative to USER. See CURLOPT_FTP_ALTERNATIVE_TO_USER(3)
    438 
    439        CURLOPT_FTP_SKIP_PASV_IP
    440               Ignore   the   IP   address  in  the  PASV  response.  See  CUR‐LOPT_FTP_SKIP_PASV_IP(3)
    441 
    442        CURLOPT_FTPSSLAUTH
    443               Control how to do TLS. See CURLOPT_FTPSSLAUTH(3)
    444 
    445        CURLOPT_FTP_SSL_CCC
    446               Back  to  non-TLS   again   after   authentication.   See   CUR‐LOPT_FTP_SSL_CCC(3)
    447 
    448        CURLOPT_FTP_ACCOUNT
    449               Send ACCT command. See CURLOPT_FTP_ACCOUNT(3)
    450 
    451        CURLOPT_FTP_FILEMETHOD
    452               Specify how to reach files. See CURLOPT_FTP_FILEMETHOD(3)
    453 
    454 RTSP OPTIONS
    455        CURLOPT_RTSP_REQUEST
    456               RTSP request. See CURLOPT_RTSP_REQUEST(3)
    457 
    458        CURLOPT_RTSP_SESSION_ID
    459               RTSP session-id. See CURLOPT_RTSP_SESSION_ID(3)
    460 
    461        CURLOPT_RTSP_STREAM_URI
    462               RTSP stream URI. See CURLOPT_RTSP_STREAM_URI(3)
    463 
    464        CURLOPT_RTSP_TRANSPORT
    465               RTSP Transport: header. See CURLOPT_RTSP_TRANSPORT(3)
    466 
    467        CURLOPT_RTSP_CLIENT_CSEQ
    468               Client CSEQ number. See CURLOPT_RTSP_CLIENT_CSEQ(3)
    469 
    470        CURLOPT_RTSP_SERVER_CSEQ
    471               CSEQ   number   for   RTSP   Server->Client  request.  See  CUR‐LOPT_RTSP_SERVER_CSEQ(3)
    472 
    473 PROTOCOL OPTIONS
    474        CURLOPT_TRANSFERTEXT
    475               Use text transfer. See CURLOPT_TRANSFERTEXT(3)
    476 
    477        CURLOPT_PROXY_TRANSFER_MODE
    478               Add transfer mode to URL over  proxy.  See  CURLOPT_PROXY_TRANS‐FER_MODE(3)
    479 
    480        CURLOPT_CRLF
    481               Convert newlines. See CURLOPT_CRLF(3)
    482 
    483        CURLOPT_RANGE
    484               Range requests. See CURLOPT_RANGE(3)
    485 
    486        CURLOPT_RESUME_FROM
    487               Resume a transfer. See CURLOPT_RESUME_FROM(3)
    488 
    489        CURLOPT_RESUME_FROM_LARGE
    490               Resume a transfer. See CURLOPT_RESUME_FROM_LARGE(3)
    491 
    492        CURLOPT_CUSTOMREQUEST
    493               Custom request/method. See CURLOPT_CUSTOMREQUEST(3)
    494 
    495        CURLOPT_FILETIME
    496               Request file modification date and time. See CURLOPT_FILETIME(3)
    497 
    498        CURLOPT_DIRLISTONLY
    499               List only. See CURLOPT_DIRLISTONLY(3)
    500 
    501        CURLOPT_NOBODY
    502               Do not get the body contents. See CURLOPT_NOBODY(3)
    503 
    504        CURLOPT_INFILESIZE
    505               Size of file to send. CURLOPT_INFILESIZE(3)
    506 
    507        CURLOPT_INFILESIZE_LARGE
    508               Size of file to send. CURLOPT_INFILESIZE_LARGE(3)
    509 
    510        CURLOPT_UPLOAD
    511               Upload data. See CURLOPT_UPLOAD(3)
    512 
    513        CURLOPT_MAXFILESIZE
    514               Maximum file size to get. See CURLOPT_MAXFILESIZE(3)
    515 
    516        CURLOPT_MAXFILESIZE_LARGE
    517               Maximum file size to get. See CURLOPT_MAXFILESIZE_LARGE(3)
    518 
    519        CURLOPT_TIMECONDITION
    520               Make a time conditional request. See CURLOPT_TIMECONDITION(3)
    521 
    522        CURLOPT_TIMEVALUE
    523               Time   value   for   the  time  conditional  request.  See  CUR‐
    524               LOPT_TIMEVALUE(3)
    525 
    526 CONNECTION OPTIONS
    527        CURLOPT_TIMEOUT
    528               Timeout for the entire request. See CURLOPT_TIMEOUT(3)
    529 
    530        CURLOPT_TIMEOUT_MS
    531               Millisecond timeout for the entire  request.  See  CURLOPT_TIME‐OUT_MS(3)
    532 
    533        CURLOPT_LOW_SPEED_LIMIT
    534               Low    speed    limit    to    abort    transfer.    See    CUR‐LOPT_LOW_SPEED_LIMIT(3)
    535 
    536        CURLOPT_LOW_SPEED_TIME
    537               Time to be below the speed to trigger low speed abort. See  CUR‐LOPT_LOW_SPEED_TIME(3)
    538 
    539        CURLOPT_MAX_SEND_SPEED_LARGE
    540               Cap     the     upload     speed     to     this.    See    CUR‐LOPT_MAX_SEND_SPEED_LARGE(3)
    541 
    542        CURLOPT_MAX_RECV_SPEED_LARGE
    543               Cap    the    download    speed    to     this.     See     CUR‐LOPT_MAX_RECV_SPEED_LARGE(3)
    544 
    545        CURLOPT_MAXCONNECTS
    546               Maximum  number  of connections in the connection pool. See CUR‐LOPT_MAXCONNECTS(3)
    547 
    548        CURLOPT_FRESH_CONNECT
    549               Use a new connection. CURLOPT_FRESH_CONNECT(3)
    550 
    551        CURLOPT_FORBID_REUSE
    552               Prevent subsequent connections  from  re-using  this.  See  CUR‐LOPT_FORBID_REUSE(3)
    553 
    554        CURLOPT_CONNECTTIMEOUT
    555               Timeout for the connection phase. See CURLOPT_CONNECTTIMEOUT(3)
    556 
    557        CURLOPT_CONNECTTIMEOUT_MS
    558               Millisecond  timeout  for the connection phase. See CURLOPT_CON‐NECTTIMEOUT_MS(3)
    559 
    560        CURLOPT_IPRESOLVE
    561               IP version to resolve to. See CURLOPT_IPRESOLVE(3)
    562 
    563        CURLOPT_CONNECT_ONLY
    564               Only connect, nothing else. See CURLOPT_CONNECT_ONLY(3)
    565 
    566        CURLOPT_USE_SSL
    567               Use TLS/SSL. See CURLOPT_USE_SSL(3)
    568 
    569        CURLOPT_RESOLVE
    570               Provide fixed/fake name resolves. See CURLOPT_RESOLVE(3)
    571 
    572        CURLOPT_DNS_INTERFACE
    573               Bind name resolves to  this  interface.  See  CURLOPT_DNS_INTER‐FACE(3)
    574 
    575        CURLOPT_DNS_LOCAL_IP4
    576               Bind   name   resolves   to   this   IP4   address.   See   CUR‐LOPT_DNS_LOCAL_IP4(3)
    577 
    578        CURLOPT_DNS_LOCAL_IP6
    579               Bind   name   resolves   to   this   IP6   address.   See   CUR‐LOPT_DNS_LOCAL_IP6(3)
    580 
    581        CURLOPT_DNS_SERVERS
    582               Preferred DNS servers. See CURLOPT_DNS_SERVERS(3)
    583 
    584        CURLOPT_ACCEPTTIMEOUT_MS
    585               Timeout  for  waiting  for  the  server's  connect  back  to  be
    586               accepted. See CURLOPT_ACCEPTTIMEOUT_MS(3)
    587 
    588 SSL and SECURITY OPTIONS
    589        CURLOPT_SSLCERT
    590               Client cert. See CURLOPT_SSLCERT(3)
    591 
    592        CURLOPT_SSLCERTTYPE
    593               Client cert type.  See CURLOPT_SSLCERTTYPE(3)
    594 
    595        CURLOPT_SSLKEY
    596               Client key. See CURLOPT_SSLKEY(3)
    597 
    598        CURLOPT_SSLKEYTYPE
    599               Client key type. See CURLOPT_SSLKEYTYPE(3)
    600 
    601        CURLOPT_KEYPASSWD
    602               Client key password. See CURLOPT_KEYPASSWD(3)
    603 
    604        CURLOPT_SSL_ENABLE_ALPN
    605               Enable use of ALPN. See CURLOPT_SSL_ENABLE_ALPN(3)
    606 
    607        CURLOPT_SSL_ENABLE_NPN
    608               Enable use of NPN. See CURLOPT_SSL_ENABLE_NPN(3)
    609 
    610        CURLOPT_SSLENGINE
    611               Use identifier with SSL engine. See CURLOPT_SSLENGINE(3)
    612 
    613        CURLOPT_SSLENGINE_DEFAULT
    614               Default SSL engine. See CURLOPT_SSLENGINE_DEFAULT(3)
    615 
    616        CURLOPT_SSL_FALSESTART
    617               Enable TLS False Start. See CURLOPT_SSL_FALSESTART(3)
    618 
    619        CURLOPT_SSLVERSION
    620               SSL version to use. See CURLOPT_SSLVERSION(3)
    621 
    622        CURLOPT_SSL_VERIFYHOST
    623               Verify  the  host  name  in  the  SSL  certificate.   See   CUR‐LOPT_SSL_VERIFYHOST(3)
    624 
    625        CURLOPT_SSL_VERIFYPEER
    626               Verify the SSL certificate. See CURLOPT_SSL_VERIFYPEER(3)
    627 
    628        CURLOPT_SSL_VERIFYSTATUS
    629               Verify  the SSL certificate's status. See CURLOPT_SSL_VERIFYSTA‐TUS(3)
    630 
    631        CURLOPT_CAINFO
    632               CA cert bundle. See CURLOPT_CAINFO(3)
    633 
    634        CURLOPT_ISSUERCERT
    635               Issuer certificate. See CURLOPT_ISSUERCERT(3)
    636 
    637        CURLOPT_CAPATH
    638               Path to CA cert bundle. See CURLOPT_CAPATH(3)
    639 
    640        CURLOPT_CRLFILE
    641               Certificate Revocation List. See CURLOPT_CRLFILE(3)
    642 
    643        CURLOPT_CERTINFO
    644               Extract certificate info. See CURLOPT_CERTINFO(3)
    645 
    646        CURLOPT_PINNEDPUBLICKEY
    647               Set pinned SSL public key . See CURLOPT_PINNEDPUBLICKEY(3)
    648 
    649        CURLOPT_RANDOM_FILE
    650               Provide  source  for  entropy  random  data.  See   CURLOPT_RAN‐DOM_FILE(3)
    651 
    652        CURLOPT_EGDSOCKET
    653               Identify EGD socket for entropy. See CURLOPT_EGDSOCKET(3)
    654 
    655        CURLOPT_SSL_CIPHER_LIST
    656               Ciphers to use. See CURLOPT_SSL_CIPHER_LIST(3)
    657 
    658        CURLOPT_SSL_SESSIONID_CACHE
    659               Disable SSL session-id cache. See CURLOPT_SSL_SESSIONID_CACHE(3)
    660 
    661        CURLOPT_SSL_OPTIONS
    662               Control SSL behavior. See CURLOPT_SSL_OPTIONS(3)
    663 
    664        CURLOPT_KRBLEVEL
    665               Kerberos security level. See CURLOPT_KRBLEVEL(3)
    666 
    667        CURLOPT_GSSAPI_DELEGATION
    668               Disable GSS-API delegation. See CURLOPT_GSSAPI_DELEGATION(3)
    669 
    670 SSH OPTIONS
    671        CURLOPT_SSH_AUTH_TYPES
    672               SSH authentication types. See CURLOPT_SSH_AUTH_TYPES(3)
    673 
    674        CURLOPT_SSH_HOST_PUBLIC_KEY_MD5
    675               MD5 of host's public key. See CURLOPT_SSH_HOST_PUBLIC_KEY_MD5(3)
    676 
    677        CURLOPT_SSH_PUBLIC_KEYFILE
    678               File name of public key. See CURLOPT_SSH_PUBLIC_KEYFILE(3)
    679 
    680        CURLOPT_SSH_PRIVATE_KEYFILE
    681               File name of private key. See CURLOPT_SSH_PRIVATE_KEYFILE(3)
    682 
    683        CURLOPT_SSH_KNOWNHOSTS
    684               File name with known hosts. See CURLOPT_SSH_KNOWNHOSTS(3)
    685 
    686        CURLOPT_SSH_KEYFUNCTION
    687               Callback  for  known  hosts  handling.  See CURLOPT_SSH_KEYFUNC‐TION(3)
    688 
    689        CURLOPT_SSH_KEYDATA
    690               Custom pointer to pass to ssh key callback. See CURLOPT_SSH_KEY‐DATA(3)
    691 
    692 OTHER OPTIONS
    693        CURLOPT_PRIVATE
    694               Private pointer to store. See CURLOPT_PRIVATE(3)
    695 
    696        CURLOPT_SHARE
    697               Share object to use. See CURLOPT_SHARE(3)
    698 
    699        CURLOPT_NEW_FILE_PERMS
    700               Mode    for    creating    new    remote    files.    See   CUR‐LOPT_NEW_FILE_PERMS(3)
    701 
    702        CURLOPT_NEW_DIRECTORY_PERMS
    703               Mode for creating new remote directories. See CURLOPT_NEW_DIREC‐TORY_PERMS(3)
    704 
    705 TELNET OPTIONS
    706        CURLOPT_TELNETOPTIONS
    707               TELNET options. See CURLOPT_TELNETOPTIONS(3)
    708 
    709 RETURN VALUE
    710        CURLE_OK  (zero) means that the option was set properly, non-zero means an error occurred as <curl/curl.h> defines. See  the  libcurl-errors(3) man page for the full list with descriptions.
    711 
    712        If  you  try  to set an option that libcurl doesn't know about, perhaps because the library is too old to support it or the option was  removed in a recent version, this function will return CURLE_UNKNOWN_OPTION. If support for the option was disabled at  compile-time,  it  will  return CURLE_NOT_BUILT_IN.
    713 
    714 EXAMPLE
    715        CURL *curl = curl_easy_init();
    716        if(curl) {
    717          CURLcode res;
    718          curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
    719          res = curl_easy_perform(curl);
    720          curl_easy_cleanup(curl);
    721        }
    722 
    723 SEE ALSO
    724        curl_easy_init(3),   curl_easy_cleanup(3),  curl_easy_reset(3),   curl_easy_getinfo(3), curl_multi_setopt(3),
    725 
    726 libcurl 7.38.0                    25 Jun 2014               curl_easy_setopt(3)
  • 相关阅读:
    Android Fragment和FragmentActivity区别和用法
    百度地图
    test
    Activity的跳转与传值
    判断Android应用是否安装、运行
    爬取当当网 Top 500 本五星好评书籍
    TED-WordCloud: 4000+视频标题词云分析
    记第一个爬虫
    requests-html简介
    用requests-html爬取7000+PDF
  • 原文地址:https://www.cnblogs.com/jikexianfeng/p/6109493.html
Copyright © 2020-2023  润新知