CURLcode curl_easy_setopt(原創)


中文翻譯:

  1 curl_easy_setopt(3)             libcurl 手冊             curl_easy_setopt(3)
  2 
  3 名稱
  4        curl_easy_setopt -curl的設置選項
  5 
  6 概要
  7        #include <curl/curl.h>
  8 
  9        CURLcode curl_easy_setopt(CURL *handle, CURLoption option, parameter);
 10 
 11 描述
 12        curl_easy_setopt(3)是用來告訴libcurl如何表現.通過設置適當的選項,應用程序可以改變libcurl的行為。所有選項都設置一個選項,然后由一個參數.
 13        這個比較長:一個函數指針,一個對象的指針或curl_off_t,取決於具體方案預計。如果參數的值不符合要求,可能導致libcurl達到理想效果,請仔細閱讀本手冊。一個典型的應用程序中會使用許多‐curl_easy_setopt(3)來對環境進行設置。此函數調用的選項設置對下面程序進行傳輸執行的參數設置,這個函數不能對已經設置的函數進行恢復,如果你想回到內部默認的狀態,你可以調用curl_easy_reset(3)。
 14        
 15        字符串傳遞給libcurl作為字符串參數,由圖書館復制,從而對指針參數的字符串儲存空間可能會被curl_easy_setopt(3)的返回值覆蓋。
 16        
 17        字符串傳遞給libcurl作為字符串參數,由文件管理系統復制,從而對指針參數關聯的字符串存儲空間可能會被curl_easy_setopt(3)的返回值覆蓋。這個規則的唯一例外是 really 的curlopt_postfields(3),但選擇拷貝的字符串curlopt_copypostfields(3)有一定的使用特點需要你讀了。
 18        
 19        選項設置的順序不重要。
 20        
 21        以前的版本7.17.0,字符串不復制。相反,保持用戶促使有效直到libcurl不再需要他們。
 22        
 23        處理是從curl_easy_init返回代碼(3)或(3)curl_easy_duphandle調用。
 24 
 25 行為選擇
 26        CURLOPT_VERBOSE
 27               如果你想CURL報告每一件意外的事情,設置這個選項為一個非零值。See CURLOPT_VERBOSE(3)
 28 
 29        CURLOPT_HEADER
 30               如果你想把一個頭包含在輸出中,設置這個選項為一個非零值. See CURLOPT_HEADER(3)
 31 
 32        CURLOPT_NOPROGRESS
 33               關閉進度表. See CURLOPT_NOPROGRESS(3)
 34 
 35        CURLOPT_NOSIGNAL
 36               不要安裝信號處理程序. See CURLOPT_NOSIGNAL(3)
 37 
 38        CURLOPT_WILDCARDMATCH
 39               根據文件名模式傳輸多個文件.  See CURLOPT_WILDCARDMATCH(3)
 40 
 41 回調函數的選擇
 42        CURLOPT_WRITEFUNCTION
 43               寫入數據的回調. See CURLOPT_WRITEFUNCTION(3)
 44        CURLOPT_WRITEDATA
 45               數據指針傳遞給寫回調. See CURLOPT_WRITE‐DATA(3)
 46        CURLOPT_READFUNCTION
 47               讀取數據回調. See CURLOPT_READFUNCTION(3)
 48        CURLOPT_READDATA
 49               數據指針傳遞給讀回調. See CURLOPT_READ‐DATA(3)
 50        CURLOPT_IOCTLFUNCTION
 51               回調的I/O操作. See CURLOPT_IOCTLFUNCTION(3)
 52        CURLOPT_IOCTLDATA
 53               數據指針傳遞給I/O回調. See CURLOPT_IOCTL‐DATA(3)
 54        CURLOPT_SEEKFUNCTION
 55               尋求操作的回調. See CURLOPT_SEEKFUNCTION(3)
 56        CURLOPT_SEEKDATA
 57               數據指針傳遞給尋求回調.  See  CURLOPT_SEEK‐ DATA(3)
 58        CURLOPT_SOCKOPTFUNCTION
 59               套接字創建的回調. See CURLOPT_SOCKOPTFUNCTION(3)
 60        CURLOPT_SOCKOPTDATA
 61               數據指針傳遞給sockopt回調. See CURLOPT_SOCK‐OPTDATA(3)
 62        CURLOPT_OPENSOCKETFUNCTION
 63               創建套接字(socket)的回調. See CURLOPT_OPENSOCKETFUNCTION(3)
 64        CURLOPT_OPENSOCKETDATA
 65               數據指針傳遞給打開的套接字(socket)回調.See CUR‐LOPT_OPENSOCKETDATA(3)
 66        CURLOPT_CLOSESOCKETFUNCTION
 67               關閉套接字(socket)的回調. See CURLOPT_CLOSESOCKETFUNCTION(3)
 68        CURLOPT_CLOSESOCKETDATA
 69               數據指針傳遞給 關閉套接字回調
 70               數據指針傳遞給關閉套接字(socket)回調. See CUR‐LOPT_CLOSESOCKETDATA(3)
 71        CURLOPT_PROGRESSFUNCTION
 72               過時的回調進度表(meter). See  CURLOPT_PROGRESSFUNC‐TION(3)
 73        CURLOPT_PROGRESSDATA
 74               數據指針傳遞給進度表(meter)回調. See CUR‐LOPT_PROGRESSDATA(3)
 75        CURLOPT_XFERINFOFUNCTION
 76               進度表的回調. See CURLOPT_XFERINFOFUNCTION(3)
 77        CURLOPT_XFERINFODATA
 78               數據指針傳遞給進度表回調.See  CUR‐LOPT_XFERINFODATA(3)
 79        CURLOPT_HEADERFUNCTION
 80               寫入接收頭的回調. See CURLOPT_HEADERFUNC‐TION(3)
 81        CURLOPT_HEADERDATA
 82               數據指針指向頭(header)回調. See CURLOPT_HEADER‐DATA(3)
 83        CURLOPT_DEBUGFUNCTION
 84               調試信息的回調. See CURLOPT_DEBUGFUNCTION(3)
 85        CURLOPT_DEBUGDATA
 86               數據指傳遞向調試回調. See CURLOPT_DEBUG‐DATA(3)
 87        CURLOPT_SSL_CTX_FUNCTION
 88               ssl上線文邏輯回調. See CURLOPT_SSL_CTX_FUNCTION(3)
 89        CURLOPT_SSL_CTX_DATA
 90               數據指針傳遞給SSL上下文回調.  See  CUR‐LOPT_SSL_CTX_DATA(3)
 91        CURLOPT_CONV_TO_NETWORK_FUNCTION
 92               代碼庫轉換的回調.  See CURLOPT_CONV_TO_NET‐WORK_FUNCTION(3)
 93        CURLOPT_CONV_FROM_NETWORK_FUNCTION
 94               代碼庫轉換的回調.  See  CURLOPT_CONV_FROM_NET‐WORK_FUNCTION(3)
 95        CURLOPT_CONV_FROM_UTF8_FUNCTION
 96               代碼庫轉換的回調.  See CUR‐LOPT_CONV_FROM_UTF8_FUNCTION(3)
 97        CURLOPT_INTERLEAVEFUNCTION
 98               回調RTSP交錯的數據. See  CURLOPT_INTERLEAVEFUNC‐TION(3)
 99        CURLOPT_INTERLEAVEDATA
100               數據指針通過RTSP交織回調. See CUR‐LOPT_INTERLEAVEDATA(3)
101        CURLOPT_CHUNK_BGN_FUNCTION
102               通配符下載啟動塊回調.  See CUR‐LOPT_CHUNK_BGN_FUNCTION(3)
103        CURLOPT_CHUNK_END_FUNCTION
104               對於大塊通配符下載結束回調. See CUR‐LOPT_CHUNK_END_FUNCTION(3)
105        CURLOPT_CHUNK_DATA
106               數據指針傳遞給塊回調.See CUR‐LOPT_CHUNK_DATA(3)
107        CURLOPT_FNMATCH_FUNCTION
108               通配符匹配回調. See CURLOPT_FNMATCH_FUNCTION(3)
109        CURLOPT_FNMATCH_DATA
110               數據指針通過通配符匹配回調. See CUR‐LOPT_FNMATCH_DATA(3)
111 錯誤選擇
112        CURLOPT_ERRORBUFFER
113               錯誤消息緩沖區. See CURLOPT_ERRORBUFFER(3)
114 
115        CURLOPT_STDERR
116               標准錯誤置換流. See CURLOPT_STDERR(3)
117 
118        CURLOPT_FAILONERROR
119               在HTTP 4xx 錯誤失敗. CURLOPT_FAILONERROR(3)
120 
121 網絡選項
122        CURLOPT_URL
123               URL工作. See CURLOPT_URL(3)
124        CURLOPT_PATH_AS_IS
125               禁用擠壓/../ 和/../在路徑序列.  See  CUR‐LOPT_PATH_AS_IS(3)
126        CURLOPT_PROTOCOLS
127               協議允許. See CURLOPT_PROTOCOLS(3)
128        CURLOPT_REDIR_PROTOCOLS
129               協議允許重定向到. See CURLOPT_REDIR_PROTOCOLS(3)
130        CURLOPT_DEFAULT_PROTOCOL
131               默認協議. See CURLOPT_DEFAULT_PROTOCOL(3)
132        CURLOPT_PROXY
133               使用代理. See CURLOPT_PROXY(3)
134        CURLOPT_PROXYPORT
135               代理端口使用. See CURLOPT_PROXYPORT(3)
136        CURLOPT_PROXYTYPE
137               代理類型. See CURLOPT_PROXYTYPE(3)
138        CURLOPT_NOPROXY
139               從代理使用篩選主機. CURLOPT_NOPROXY(3)
140        CURLOPT_HTTPPROXYTUNNEL
141               通過HTTP代理隧道. CURLOPT_HTTPPROXYTUNNEL(3)
142        CURLOPT_SOCKS5_GSSAPI_SERVICE
143               Socks5 GSSAPI服務名字. CURLOPT_SOCKS5_GSSAPI_SERVICE(3)
144        CURLOPT_SOCKS5_GSSAPI_NEC
145               Socks5 GSSAPI 無差錯校驗模式. See CURLOPT_SOCKS5_GSSAPI_NEC(3)
146        CURLOPT_PROXY_SERVICE_NAME
147               代理服務名字. CURLOPT_PROXY_SERVICE_NAME(3)
148        CURLOPT_SERVICE_NAME
149               SPNEGO服務名字. CURLOPT_SERVICE_NAME(3)
150        CURLOPT_INTERFACE
151               綁定本地連接. See CURLOPT_INTERFACE(3)
152        CURLOPT_LOCALPORT
153               綁定本地連接到端口. See CURLOPT_LOCALPORT(3)
154        CURLOPT_LOCALPORTRANGE
155               綁定本地連接綁定到范圍端口. See CURLOPT_LOCALPOR‐TRANGE(3)
156        CURLOPT_DNS_CACHE_TIMEOUT
157               DNS緩存超時. See CURLOPT_DNS_CACHE_TIMEOUT(3)
158        CURLOPT_DNS_USE_GLOBAL_CACHE
159              過時的使全局DNS緩存。See CUR‐LOPT_DNS_USE_GLOBAL_CACHE(3)
160        CURLOPT_BUFFERSIZE
161               要求較小的緩沖區大小. See CURLOPT_BUFFERSIZE(3)
162        CURLOPT_PORT
163              端口號連接到. See CURLOPT_PORT(3)
164        CURLOPT_TCP_NODELAY
165               禁用Nagle算法. See CURLOPT_TCP_NODELAY(3)
166        CURLOPT_ADDRESS_SCOPE
167               對於本地地址IPv6范圍. See CURLOPT_ADDRESS_SCOPE(3)
168        CURLOPT_TCP_KEEPALIVE
169               啟動持久連接(TCP keep-alive). See CURLOPT_TCP_KEEPALIVE(3)
170        CURLOPT_TCP_KEEPIDLE
171               發送前的空閑時間. See CURLOPT_TCP_KEEPIDLE(3)
172        CURLOPT_TCP_KEEPINTVL
173               保持活探針之間的間隔. See CURLOPT_TCP_KEEPINTVL(3)
174        CURLOPT_UNIX_SOCKET_PATH
175               一個Unix域套接字(socket)的路徑. See CURLOPT_UNIX_SOCKET_PATH(3)
176 名稱和密碼選項(身份驗證)
177        CURLOPT_NETRC
178               使用.戶配置腳本文件解析. See CURLOPT_NETRC(3)
179        CURLOPT_NETRC_FILE
180               .配置腳本文件名. See CURLOPT_NETRC_FILE(3)
181        CURLOPT_USERPWD
182               用戶名和密碼. See CURLOPT_USERPWD(3)
183        CURLOPT_PROXYUSERPWD
184               代理用戶名和密碼.See CURLOPT_PROXYUSERPWD(3)
185        CURLOPT_USERNAME
186               用戶名. See CURLOPT_USERNAME(3)
187        CURLOPT_PASSWORD
188               密碼. See CURLOPT_PASSWORD(3)
189        CURLOPT_LOGIN_OPTIONS
190               登陸選項. See CURLOPT_LOGIN_OPTIONS(3)
191        CURLOPT_PROXYUSERNAME
192               代理用戶名. See CURLOPT_PROXYUSERNAME(3)
193        CURLOPT_PROXYPASSWORD
194               代理密碼. See CURLOPT_PROXYPASSWORD(3)
195        CURLOPT_HTTPAUTH
196               HTTP服務器的身份驗證方法. See CURLOPT_HTTPAUTH(3)
197        CURLOPT_TLSAUTH_USERNAME
198               TLS 驗證用戶名. See CURLOPT_TLSAUTH_USERNAME(3)
199        CURLOPT_TLSAUTH_PASSWORD
200               TLS 驗證密碼. See CURLOPT_TLSAUTH_PASSWORD(3)
201        CURLOPT_TLSAUTH_TYPE
202               TLS 身份驗證方法. See CURLOPT_TLSAUTH_TYPE(3)
203        CURLOPT_PROXYAUTH
204               HTTP代理驗證方法. See CURLOPT_PROXYAUTH(3)
205        CURLOPT_SASL_IR
206               使SASL的初始響應. See CURLOPT_SASL_IR(3)
207        CURLOPT_XOAUTH2_BEARER
208               OAuth2不記名令牌. See CURLOPT_XOAUTH2_BEARER(3)
209 
210 HTTP選項
211        CURLOPT_AUTOREFERER
212               自動設置參考;標題. See CURLOPT_AUTOREFERER(3)
213        CURLOPT_ACCEPT_ENCODING
214               接受編碼和自動解壓縮數據. See CUR‐LOPT_ACCEPT_ENCODING(3)
215        CURLOPT_TRANSFER_ENCODING
216               請求傳輸編碼. See CURLOPT_TRANSFER_ENCODING(3)
217        CURLOPT_FOLLOWLOCATION
218               遵循HTTP重定向. See CURLOPT_FOLLOWLOCATION(3)
219        CURLOPT_UNRESTRICTED_AUTH
220               不限制對原始主機的身份驗證.  CURLOPT_UNRE‐STRICTED_AUTH(3)
221        CURLOPT_MAXREDIRS
222               跟隨重定向的最大數量. See CURLOPT_MAXREDIRS(3)
223        CURLOPT_POSTREDIR
224               如何采取行動后的重定向POST. See CURLOPT_POSTREDIR(3)
225        CURLOPT_PUT
226               發出一個HTTP PUT請求. See CURLOPT_PUT(3)
227        CURLOPT_POST
228               發送一個HTTP POST要求. See CURLOPT_POST(3)
229        CURLOPT_POSTFIELDS
230               用這個數據發送一個POST. See CURLOPT_POSTFIELDS(3)
231        CURLOPT_POSTFIELDSIZE
232               如果你想發送數據POST到服務器沒有libcurl做strlen()測量數據的大小,必須使用此選項。使用此選項時你可以把完全的二進制數據,否則可能會失敗。如果這個大小設置為1,圖書館將使用strlen()得到尺寸. See CURLOPT_POSTFIELDSIZE(3)
233        CURLOPT_POSTFIELDSIZE_LARGE
234               如果你想發送數據POST到服務器沒有libcurl做strlen()測量數據的大小,必須使用此選項。使用此選項時你可以把完全的二進制數據,否則可能會失敗。如果這個大小設置為1,圖書館將使用strlen()得到尺寸. See CURLOPT_POSTFIELDSIZE_LARGE(3)
235        CURLOPT_COPYPOSTFIELDS
236               以POST的方式發送一段內容.See CURLOPT_COPYPOST‐FIELDS(3)
237        CURLOPT_HTTPPOST
238               多窗體發送HTTP POST. See CURLOPT_HTTPPOST(3)
239        CURLOPT_REFERER
240               引用:標頭. See CURLOPT_REFERER(3)
241        CURLOPT_USERAGENT
242               用戶代理:標頭. See CURLOPT_USERAGENT(3)
243        CURLOPT_HTTPHEADER
244               自定義HTTP頭.See CURLOPT_HTTPHEADER(3)
245        CURLOPT_HEADEROPT
246               控件自定義HTTP頭. See CURLOPT_HEADEROPT(3)
247        CURLOPT_PROXYHEADER
248               自定義發送到代理的HTTP頭. See CURLOPT_PROXYHEADER(3)
249        CURLOPT_HTTP200ALIASES
250              指定HTTP 200 OK備選匹配.See CURLOPT_HTTP200ALIASES(3)
251        CURLOPT_COOKIE
252               發送小文件. See CURLOPT_COOKIE(3)
253        CURLOPT_COOKIEFILE
254               從文件讀取. See CURLOPT_COOKIEFILE(3)
255        CURLOPT_COOKIEJAR
256               向文件寫入. See CURLOPT_COOKIEJAR(3)
257        CURLOPT_COOKIESESSION
258               開始一個新的cookie會話. See CURLOPT_COOKIESESSION(3)
259        CURLOPT_COOKIELIST
260               添加或控制cookies. See CURLOPT_COOKIELIST(3)
261        CURLOPT_HTTPGET
262              做一個HTTP GET請求.See CURLOPT_HTTPGET(3)
263        CURLOPT_HTTP_VERSION
264               HTTP版本的使用.CURLOPT_HTTP_VERSION(3)
265        CURLOPT_IGNORE_CONTENT_LENGTH
266               忽略內容長度(Content-Length). See CURLOPT_IGNORE_CONTENT_LENGTH(3)
267        CURLOPT_HTTP_CONTENT_DECODING
268               禁用Content(CSS的一種屬性)譯碼. See CURLOPT_HTTP_CONTENT_DECODING(3)
269        CURLOPT_HTTP_TRANSFER_DECODING
270               禁用傳輸解碼.See CURLOPT_HTTP_TRANSFER_DECODING(3)
271        CURLOPT_EXPECT_100_TIMEOUT_MS
272               100-continue timeout. See CURLOPT_EXPECT_100_TIMEOUT_MS(3)
273 
274        CURLOPT_PIPEWAIT
275               Wait on connection to pipeline on it. See CURLOPT_PIPEWAIT(3)
276 
277        CURLOPT_STREAM_DEPENDS
278               This   HTTP/2   stream   depends   on    another.    See    CUR‐
279               LOPT_STREAM_DEPENDS(3)
280 
281        CURLOPT_STREAM_DEPENDS_E
282               This  HTTP/2  stream  depends  on  another exclusively. See CUR‐
283               LOPT_STREAM_DEPENDS_E(3)
284 
285        CURLOPT_STREAM_WEIGHT
286               Set this HTTP/2 stream's weight. See CURLOPT_STREAM_WEIGHT(3)
287 
288 SMTP OPTIONS
289        CURLOPT_MAIL_FROM
290               Address of the sender. See CURLOPT_MAIL_FROM(3)
291 
292        CURLOPT_MAIL_RCPT
293               Address of the recipients. See CURLOPT_MAIL_RCPT(3)
294 
295        CURLOPT_MAIL_AUTH
296               Authentication address. See CURLOPT_MAIL_AUTH(3)
297 
298 TFTP OPTIONS
299        CURLOPT_TFTP_BLKSIZE
300               TFTP block size. See CURLOPT_TFTP_BLKSIZE(3)
301 
302 FTP OPTIONS
303        CURLOPT_FTPPORT
304               Use active FTP. See CURLOPT_FTPPORT(3)
305 
306        CURLOPT_QUOTE
307               Commands to run before transfer. See CURLOPT_QUOTE(3)
308 
309        CURLOPT_POSTQUOTE
310               Commands to run after transfer. See CURLOPT_POSTQUOTE(3)
311 
312        CURLOPT_PREQUOTE
313               Commands to run just before transfer. See CURLOPT_PREQUOTE(3)
314 
315        CURLOPT_APPEND
316               Append to remote file. See CURLOPT_APPEND(3)
317 
318        CURLOPT_FTP_USE_EPRT
319               Use EPTR. See CURLOPT_FTP_USE_EPRT(3)
320 
321        CURLOPT_FTP_USE_EPSV
322               Use EPSV. See CURLOPT_FTP_USE_EPSV(3)
323 
324        CURLOPT_FTP_USE_PRET
325               Use PRET. See CURLOPT_FTP_USE_PRET(3)
326 
327        CURLOPT_FTP_CREATE_MISSING_DIRS
328               Create missing  directories  on  the  remote  server.  See  CUR‐
329               LOPT_FTP_CREATE_MISSING_DIRS(3)
330 
331        CURLOPT_FTP_RESPONSE_TIMEOUT
332               Timeout for FTP responses. See CURLOPT_FTP_RESPONSE_TIMEOUT(3)
333 
334        CURLOPT_FTP_ALTERNATIVE_TO_USER
335               Alternative to USER. See CURLOPT_FTP_ALTERNATIVE_TO_USER(3)
336 
337        CURLOPT_FTP_SKIP_PASV_IP
338               Ignore   the   IP   address  in  the  PASV  response.  See  CUR‐
339               LOPT_FTP_SKIP_PASV_IP(3)
340 
341        CURLOPT_FTPSSLAUTH
342               Control how to do TLS. See CURLOPT_FTPSSLAUTH(3)
343 
344        CURLOPT_FTP_SSL_CCC
345               Back  to  non-TLS   again   after   authentication.   See   CUR‐
346               LOPT_FTP_SSL_CCC(3)
347 
348        CURLOPT_FTP_ACCOUNT
349               Send ACCT command. See CURLOPT_FTP_ACCOUNT(3)
350 
351        CURLOPT_FTP_FILEMETHOD
352               Specify how to reach files. See CURLOPT_FTP_FILEMETHOD(3)
353 
354 RTSP OPTIONS
355        CURLOPT_RTSP_REQUEST
356               RTSP request. See CURLOPT_RTSP_REQUEST(3)
357 
358        CURLOPT_RTSP_SESSION_ID
359               RTSP session-id. See CURLOPT_RTSP_SESSION_ID(3)
360 
361        CURLOPT_RTSP_STREAM_URI
362               RTSP stream URI. See CURLOPT_RTSP_STREAM_URI(3)
363 
364        CURLOPT_RTSP_TRANSPORT
365               RTSP Transport: header. See CURLOPT_RTSP_TRANSPORT(3)
366 
367        CURLOPT_RTSP_CLIENT_CSEQ
368               Client CSEQ number. See CURLOPT_RTSP_CLIENT_CSEQ(3)
369 
370        CURLOPT_RTSP_SERVER_CSEQ
371               CSEQ   number   for   RTSP   Server->Client  request.  See  CUR‐
372               LOPT_RTSP_SERVER_CSEQ(3)
373 
374 PROTOCOL OPTIONS
375        CURLOPT_TRANSFERTEXT
376               Use text transfer. See CURLOPT_TRANSFERTEXT(3)
377 
378        CURLOPT_PROXY_TRANSFER_MODE
379               Add transfer mode to URL over  proxy.  See  CURLOPT_PROXY_TRANS‐
380               FER_MODE(3)
381 
382        CURLOPT_CRLF
383               Convert newlines. See CURLOPT_CRLF(3)
384 
385        CURLOPT_RANGE
386               Range requests. See CURLOPT_RANGE(3)
387 
388        CURLOPT_RESUME_FROM
389               Resume a transfer. See CURLOPT_RESUME_FROM(3)
390 
391        CURLOPT_RESUME_FROM_LARGE
392               Resume a transfer. See CURLOPT_RESUME_FROM_LARGE(3)
393 
394        CURLOPT_CUSTOMREQUEST
395               Custom request/method. See CURLOPT_CUSTOMREQUEST(3)
396 
397        CURLOPT_FILETIME
398               Request file modification date and time. See CURLOPT_FILETIME(3)
399 
400        CURLOPT_DIRLISTONLY
401               List only. See CURLOPT_DIRLISTONLY(3)
402 
403        CURLOPT_NOBODY
404               Do not get the body contents. See CURLOPT_NOBODY(3)
405 
406        CURLOPT_INFILESIZE
407               Size of file to send. CURLOPT_INFILESIZE(3)
408 
409        CURLOPT_INFILESIZE_LARGE
410               Size of file to send. CURLOPT_INFILESIZE_LARGE(3)
411 
412        CURLOPT_UPLOAD
413               Upload data. See CURLOPT_UPLOAD(3)
414 
415        CURLOPT_MAXFILESIZE
416               Maximum file size to get. See CURLOPT_MAXFILESIZE(3)
417 
418        CURLOPT_MAXFILESIZE_LARGE
419               Maximum file size to get. See CURLOPT_MAXFILESIZE_LARGE(3)
420 
421        CURLOPT_TIMECONDITION
422               Make a time conditional request. See CURLOPT_TIMECONDITION(3)
423 
424        CURLOPT_TIMEVALUE
425               Time   value   for   the  time  conditional  request.  See  CUR‐
426               LOPT_TIMEVALUE(3)
427 
428 連接選項
429        CURLOPT_TIMEOUT
430               整個請求的超時時間(s).See CURLOPT_TIMEOUT(3)
431        CURLOPT_TIMEOUT_MS
432               整個請求的超時時間(ms).See CURLOPT_TIME‐OUT_MS(3)
433        CURLOPT_LOW_SPEED_LIMIT
434               低限速中止傳輸.See CUR‐LOPT_LOW_SPEED_LIMIT(3)
435        CURLOPT_LOW_SPEED_TIME
436               時間低於速度觸發低速中止. See  CUR‐LOPT_LOW_SPEED_TIME(3)
437        CURLOPT_MAX_SEND_SPEED_LARGE
438               上限上傳速度. See CUR‐LOPT_MAX_SEND_SPEED_LARGE(3)
439        CURLOPT_MAX_RECV_SPEED_LARGE
440               下載速度上限. See CUR‐LOPT_MAX_RECV_SPEED_LARGE(3)
441        CURLOPT_MAXCONNECTS
442               連接池中的最大連接數. See CUR‐LOPT_MAXCONNECTS(3)
443        CURLOPT_FRESH_CONNECT
444               使用一個新的連接. CURLOPT_FRESH_CONNECT(3)
445        CURLOPT_FORBID_REUSE
446               防止隨后重新連接.  See  CUR‐LOPT_FORBID_REUSE(3)
447        CURLOPT_CONNECTTIMEOUT    
448               連接階段的超時(m). See CURLOPT_CONNECTTIMEOUT(3)
449        CURLOPT_CONNECTTIMEOUT_MS
450               連接階段的超時(ms). See CURLOPT_CON‐NECTTIMEOUT_MS(3)
451        CURLOPT_IPRESOLVE
452               IP版本解決. See CURLOPT_IPRESOLVE(3)
453        CURLOPT_CONNECT_ONLY
454               只有連接,沒有別的. See CURLOPT_CONNECT_ONLY(3)
455        CURLOPT_USE_SSL
456               使用TLS / SSL. See CURLOPT_USE_SSL(3)
457        CURLOPT_RESOLVE
458               提供自定義主機名到IP地址的解析. See CURLOPT_RESOLVE(3)
459        CURLOPT_DNS_INTERFACE
460               綁定名稱解析到這個接口. See CURLOPT_DNS_INTER‐FACE(3)
461        CURLOPT_DNS_LOCAL_IP4
462               綁定名稱解析到這個IP4地址. See CUR‐LOPT_DNS_LOCAL_IP4(3)
463        CURLOPT_DNS_LOCAL_IP6
464               綁定名稱解析到這個IP6地址. See CUR‐LOPT_DNS_LOCAL_IP6(3)
465        CURLOPT_DNS_SERVERS
466               首選DNS服務器. See CURLOPT_DNS_SERVERS(3)
467        CURLOPT_ACCEPTTIMEOUT_MS
468               等待服務器的連接被接受的超時(ms). See CURLOPT_ACCEPTTIMEOUT_MS(3)
469 SSL和安全選項
470        CURLOPT_SSLCERT
471               客戶端證書. See CURLOPT_SSLCERT(3)
472        CURLOPT_SSLCERTTYPE
473               客戶端證書類型.  See CURLOPT_SSLCERTTYPE(3)
474        CURLOPT_SSLKEY
475               客戶端鑰匙. See CURLOPT_SSLKEY(3)
476        CURLOPT_SSLKEYTYPE
477               客戶端鑰匙類型. See CURLOPT_SSLKEYTYPE(3)
478        CURLOPT_KEYPASSWD
479               客戶端鑰匙密碼. See CURLOPT_KEYPASSWD(3)
480        CURLOPT_SSL_ENABLE_ALPN
481               啟用ALPN. See CURLOPT_SSL_ENABLE_ALPN(3)
482        CURLOPT_SSL_ENABLE_NPN
483               啟用NPN. See CURLOPT_SSL_ENABLE_NPN(3)
484        CURLOPT_SSLENGINE
485               使用SSL引擎標識符. See CURLOPT_SSLENGINE(3)
486        CURLOPT_SSLENGINE_DEFAULT
487               默認的SSL引擎. See CURLOPT_SSLENGINE_DEFAULT(3)
488        CURLOPT_SSL_FALSESTART
489              啟用TLS搶跑.See CURLOPT_SSL_FALSESTART(3)
490        CURLOPT_SSLVERSION
491               SSL版本使用.See CURLOPT_SSLVERSION(3)
492        CURLOPT_SSL_VERIFYHOST
493               驗證的主機名SSL證書.See CUR‐LOPT_SSL_VERIFYHOST(3)
494        CURLOPT_SSL_VERIFYPEER
495               驗證SSL證書. See CURLOPT_SSL_VERIFYPEER(3)
496        CURLOPT_SSL_VERIFYSTATUS
497               驗證SSL證書的狀態.See CURLOPT_SSL_VERIFYSTA‐TUS(3)
498        CURLOPT_CAINFO
499               捆綁的CA證書. See CURLOPT_CAINFO(3)
500        CURLOPT_ISSUERCERT
501               發行者證書. See CURLOPT_ISSUERCERT(3)
502        CURLOPT_CAPATH
503               捆綁的CA證書路徑. See CURLOPT_CAPATH(3)
504        CURLOPT_CRLFILE
505               證書吊銷列表. See CURLOPT_CRLFILE(3)
506        CURLOPT_CERTINFO
507               提取證書信息. See CURLOPT_CERTINFO(3)
508        CURLOPT_PINNEDPUBLICKEY
509               設置固定的SSL密鑰. See CURLOPT_PINNEDPUBLICKEY(3)
510        CURLOPT_RANDOM_FILE
511               指定一個隨機的數據源.See CURLOPT_RAN‐DOM_FILE(3)
512        CURLOPT_EGDSOCKET
513               點對點(EGD)套接字(socket)的路徑. See CURLOPT_EGDSOCKET(3)
514        CURLOPT_SSL_CIPHER_LIST
515               使用密碼. See CURLOPT_SSL_CIPHER_LIST(3)
516        CURLOPT_SSL_SESSIONID_CACHE
517               禁用SSL會話ID緩存.See CURLOPT_SSL_SESSIONID_CACHE(3)
518        CURLOPT_SSL_OPTIONS
519               SSL行為控制.See CURLOPT_SSL_OPTIONS(3)
520        CURLOPT_KRBLEVEL
521               Kerberos安全水平.See CURLOPT_KRBLEVEL(3)
522        CURLOPT_GSSAPI_DELEGATION
523               禁用GSS-API授權.See CURLOPT_GSSAPI_DELEGATION(3)
524 SSH選擇
525        CURLOPT_SSH_AUTH_TYPES
526               SSH認證類型. See CURLOPT_SSH_AUTH_TYPES(3)
527        CURLOPT_SSH_HOST_PUBLIC_KEY_MD5
528               MD5的主機的公鑰.See CURLOPT_SSH_HOST_PUBLIC_KEY_MD5(3)
529        CURLOPT_SSH_PUBLIC_KEYFILE
530               公共密鑰的文件名. See CURLOPT_SSH_PUBLIC_KEYFILE(3)
531        CURLOPT_SSH_PRIVATE_KEYFILE
532               私有密匙的文件名. See CURLOPT_SSH_PRIVATE_KEYFILE(3)
533        CURLOPT_SSH_KNOWNHOSTS
534               已知主機的文件名. See CURLOPT_SSH_KNOWNHOSTS(3)
535        CURLOPT_SSH_KEYFUNCTION
536               回調已知主機處理.  See CURLOPT_SSH_KEYFUNC‐TION(3)
537        CURLOPT_SSH_KEYDATA
538               自定義指針通過ssh鑰匙的回調. See CURLOPT_SSH_KEY‐DATA(3)
539 其他選項
540        CURLOPT_PRIVATE
541               專用指針存儲. See CURLOPT_PRIVATE(3)
542        CURLOPT_SHARE
543               共享對象使用. See CURLOPT_SHARE(3)
544        CURLOPT_NEW_FILE_PERMS
545               創建新遠程文件的模式. See CUR‐LOPT_NEW_FILE_PERMS(3)
546        CURLOPT_NEW_DIRECTORY_PERMS
547               創建新的遠程目錄的模式. See CURLOPT_NEW_DIREC‐TORY_PERMS(3)
548 
549 遠程登錄選項
550        CURLOPT_TELNETOPTIONS
551               遠程登錄選項. See CURLOPT_TELNETOPTIONS(3)
552 
553 返回值
554        CURLE_OK (零)意味着選擇了正確的選項, 非零意味着錯誤發生是<curl/curl.h>定義.詳情請見libcurl-errors(3) 操作說明有完整的列表.
555        如果你試圖設置一個libcurl的不知道的選項,也許是因為說明手冊太老的支持或選擇在最近的版本中刪除,該函數將返回curle_unknown_option。如果參數不真確在編譯時,它將返回curle_not_built_in。
556 
557 范例
558        CURL *curl = curl_easy_init();
559        if(curl) {
560          CURLcode res;
561          curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
562          res = curl_easy_perform(curl);
563          curl_easy_cleanup(curl);
564        }
565 
566 請參閱
567        curl_easy_init(3),       curl_easy_cleanup(3),      curl_easy_reset(3),
568        curl_easy_getinfo(3), curl_multi_setopt(3),
569 
570 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
 13        the appropriate options, the application can change libcurl's behavior.
 14        All options are set with an option followed by a parameter. That param‐
 15        eter can be a  long,  a  function  pointer,  an  object  pointer  or  a
 16        curl_off_t,  depending  on  what the specific option expects. Read this
 17        manual carefully as bad input values may cause libcurl to behave badly!
 18        You  can  only set one option in each function call. A typical applica‐
 19        tion uses many curl_easy_setopt(3) calls in the setup phase.
 20 
 21        Options set with this function  call  are  valid  for  all  forthcoming
 22        transfers  performed using this handle.  The options are not in any way
 23        reset between transfers, so if you want subsequent transfers with  dif‐
 24        ferent  options,  you  must  change them between the transfers. You can
 25        optionally  reset  all  options   back   to   internal   default   with
 26        curl_easy_reset(3).
 27 
 28        Strings  passed  to  libcurl  as  'char *' arguments, are copied by the
 29        library; thus the string storage associated to the pointer argument may
 30        be overwritten after curl_easy_setopt(3) returns. The only exception to
 31        this rule is really CURLOPT_POSTFIELDS(3),  but  the  alternative  that
 32        copies the string CURLOPT_COPYPOSTFIELDS(3) has some usage characteris‐
 33        tics you need to read up on.
 34 
 35        The order in which the options are set does not matter.
 36 
 37        Before version 7.17.0, strings were not copied. Instead  the  user  was
 38        forced keep them available until libcurl no longer needed them.
 39 
 40        The   handle   is   the   return   code  from  a  curl_easy_init(3)  or
 41        curl_easy_duphandle(3) call.
 42 
 43 BEHAVIOR OPTIONS
 44        CURLOPT_VERBOSE
 45               Display verbose information. See CURLOPT_VERBOSE(3)
 46 
 47        CURLOPT_HEADER
 48               Include the header in the body output. See CURLOPT_HEADER(3)
 49 
 50        CURLOPT_NOPROGRESS
 51               Shut off the progress meter. See CURLOPT_NOPROGRESS(3)
 52 
 53        CURLOPT_NOSIGNAL
 54               Do not install signal handlers. See CURLOPT_NOSIGNAL(3)
 55 
 56        CURLOPT_WILDCARDMATCH
 57               Transfer multiple files according to a file  name  pattern.  See
 58               CURLOPT_WILDCARDMATCH(3)
 59 
 60 CALLBACK OPTIONS
 61        CURLOPT_WRITEFUNCTION
 62               Callback for writing data. See CURLOPT_WRITEFUNCTION(3)
 63 
 64        CURLOPT_WRITEDATA
 65               Data  pointer  to pass to the write callback. See CURLOPT_WRITE‐
 66               DATA(3)
 67 
 68        CURLOPT_READFUNCTION
 69               Callback for reading data. See CURLOPT_READFUNCTION(3)
 70 
 71        CURLOPT_READDATA
 72               Data pointer to pass to the  read  callback.  See  CURLOPT_READ‐
 73               DATA(3)
 74 
 75        CURLOPT_IOCTLFUNCTION
 76               Callback for I/O operations. See CURLOPT_IOCTLFUNCTION(3)
 77 
 78        CURLOPT_IOCTLDATA
 79               Data  pointer  to  pass  to the I/O callback. See CURLOPT_IOCTL‐
 80               DATA(3)
 81 
 82        CURLOPT_SEEKFUNCTION
 83               Callback for seek operations. See CURLOPT_SEEKFUNCTION(3)
 84 
 85        CURLOPT_SEEKDATA
 86               Data pointer to pass to the  seek  callback.  See  CURLOPT_SEEK‐
 87               DATA(3)
 88 
 89        CURLOPT_SOCKOPTFUNCTION
 90               Callback for sockopt operations. See CURLOPT_SOCKOPTFUNCTION(3)
 91 
 92        CURLOPT_SOCKOPTDATA
 93               Data  pointer to pass to the sockopt callback. See CURLOPT_SOCK‐
 94               OPTDATA(3)
 95 
 96        CURLOPT_OPENSOCKETFUNCTION
 97               Callback for socket creation. See CURLOPT_OPENSOCKETFUNCTION(3)
 98 
 99        CURLOPT_OPENSOCKETDATA
100               Data pointer to pass to  the  open  socket  callback.  See  CUR‐
101               LOPT_OPENSOCKETDATA(3)
102 
103        CURLOPT_CLOSESOCKETFUNCTION
104               Callback for closing socket. See CURLOPT_CLOSESOCKETFUNCTION(3)
105 
106        CURLOPT_CLOSESOCKETDATA
107               Data  pointer  to  pass  to  the close socket callback. See CUR‐
108               LOPT_CLOSESOCKETDATA(3)
109 
110        CURLOPT_PROGRESSFUNCTION
111               OBSOLETE callback for progress meter. See  CURLOPT_PROGRESSFUNC‐
112               TION(3)
113 
114        CURLOPT_PROGRESSDATA
115               Data  pointer  to  pass to the progress meter callback. See CUR‐
116               LOPT_PROGRESSDATA(3)
117 
118        CURLOPT_XFERINFOFUNCTION
119               Callback for progress meter. See CURLOPT_XFERINFOFUNCTION(3)
120 
121        CURLOPT_XFERINFODATA
122               Data pointer to pass to the progress meter  callback.  See  CUR‐
123               LOPT_XFERINFODATA(3)
124 
125        CURLOPT_HEADERFUNCTION
126               Callback  for  writing received headers. See CURLOPT_HEADERFUNC‐
127               TION(3)
128 
129        CURLOPT_HEADERDATA
130               Data pointer to pass to the header callback. See CURLOPT_HEADER‐
131               DATA(3)
132 
133        CURLOPT_DEBUGFUNCTION
134               Callback for debug information. See CURLOPT_DEBUGFUNCTION(3)
135 
136        CURLOPT_DEBUGDATA
137               Data  pointer  to pass to the debug callback. See CURLOPT_DEBUG‐
138               DATA(3)
139 
140        CURLOPT_SSL_CTX_FUNCTION
141               Callback for SSL context logic. See CURLOPT_SSL_CTX_FUNCTION(3)
142 
143        CURLOPT_SSL_CTX_DATA
144               Data pointer to pass to  the  SSL  context  callback.  See  CUR‐
145               LOPT_SSL_CTX_DATA(3)
146 
147        CURLOPT_CONV_TO_NETWORK_FUNCTION
148               Callback  for  code  base  conversion.  See CURLOPT_CONV_TO_NET‐
149               WORK_FUNCTION(3)
150 
151        CURLOPT_CONV_FROM_NETWORK_FUNCTION
152               Callback for code base  conversion.  See  CURLOPT_CONV_FROM_NET‐
153               WORK_FUNCTION(3)
154 
155        CURLOPT_CONV_FROM_UTF8_FUNCTION
156               Callback     for     code     base    conversion.    See    CUR‐
157               LOPT_CONV_FROM_UTF8_FUNCTION(3)
158 
159        CURLOPT_INTERLEAVEFUNCTION
160               Callback for RTSP interleaved data. See  CURLOPT_INTERLEAVEFUNC‐
161               TION(3)
162 
163        CURLOPT_INTERLEAVEDATA
164               Data  pointer  to pass to the RTSP interleave callback. See CUR‐
165               LOPT_INTERLEAVEDATA(3)
166 
167        CURLOPT_CHUNK_BGN_FUNCTION
168               Callback  for  wildcard  download  start  of  chunk.  See   CUR‐
169               LOPT_CHUNK_BGN_FUNCTION(3)
170 
171        CURLOPT_CHUNK_END_FUNCTION
172               Callback   for   wildcard   download  end  of  chunk.  See  CUR‐
173               LOPT_CHUNK_END_FUNCTION(3)
174 
175        CURLOPT_CHUNK_DATA
176               Data  pointer  to  pass  to  the  chunk  callbacks.   See   CUR‐
177               LOPT_CHUNK_DATA(3)
178 
179        CURLOPT_FNMATCH_FUNCTION
180               Callback for wildcard matching. See CURLOPT_FNMATCH_FUNCTION(3)
181 
182        CURLOPT_FNMATCH_DATA
183               Data pointer to pass to the wildcard matching callback. See CUR‐
184               LOPT_FNMATCH_DATA(3)
185 
186 ERROR OPTIONS
187        CURLOPT_ERRORBUFFER
188               Error message buffer. See CURLOPT_ERRORBUFFER(3)
189 
190        CURLOPT_STDERR
191               stderr replacement stream. See CURLOPT_STDERR(3)
192 
193        CURLOPT_FAILONERROR
194               Fail on HTTP 4xx errors. CURLOPT_FAILONERROR(3)
195 
196 NETWORK OPTIONS
197        CURLOPT_URL
198               URL to work on. See CURLOPT_URL(3)
199 
200        CURLOPT_PATH_AS_IS
201               Disable squashing /../ and /./ sequences in the path.  See  CUR‐
202               LOPT_PATH_AS_IS(3)
203 
204        CURLOPT_PROTOCOLS
205               Allowed protocols. See CURLOPT_PROTOCOLS(3)
206 
207        CURLOPT_REDIR_PROTOCOLS
208               Protocols to allow redirects to. See CURLOPT_REDIR_PROTOCOLS(3)
209 
210        CURLOPT_DEFAULT_PROTOCOL
211               Default protocol. See CURLOPT_DEFAULT_PROTOCOL(3)
212 
213        CURLOPT_PROXY
214               Proxy to use. See CURLOPT_PROXY(3)
215 
216        CURLOPT_PROXYPORT
217               Proxy port to use. See CURLOPT_PROXYPORT(3)
218 
219        CURLOPT_PROXYTYPE
220               Proxy type. See CURLOPT_PROXYTYPE(3)
221 
222        CURLOPT_NOPROXY
223               Filter out hosts from proxy use. CURLOPT_NOPROXY(3)
224 
225        CURLOPT_HTTPPROXYTUNNEL
226               Tunnel through the HTTP proxy. CURLOPT_HTTPPROXYTUNNEL(3)
227 
228        CURLOPT_SOCKS5_GSSAPI_SERVICE
229               Socks5 GSSAPI service name. CURLOPT_SOCKS5_GSSAPI_SERVICE(3)
230 
231        CURLOPT_SOCKS5_GSSAPI_NEC
232               Socks5 GSSAPI NEC mode. See CURLOPT_SOCKS5_GSSAPI_NEC(3)
233 
234        CURLOPT_PROXY_SERVICE_NAME
235               Proxy service name. CURLOPT_PROXY_SERVICE_NAME(3)
236 
237        CURLOPT_SERVICE_NAME
238               SPNEGO service name. CURLOPT_SERVICE_NAME(3)
239 
240        CURLOPT_INTERFACE
241               Bind connection locally to this. See CURLOPT_INTERFACE(3)
242 
243        CURLOPT_LOCALPORT
244               Bind connection locally to this port. See CURLOPT_LOCALPORT(3)
245 
246        CURLOPT_LOCALPORTRANGE
247               Bind  connection  locally  to  port range. See CURLOPT_LOCALPOR‐
248               TRANGE(3)
249 
250        CURLOPT_DNS_CACHE_TIMEOUT
251               Timeout for DNS cache. See CURLOPT_DNS_CACHE_TIMEOUT(3)
252 
253        CURLOPT_DNS_USE_GLOBAL_CACHE
254               OBSOLETE    Enable    global     DNS     cache.     See     CUR‐
255               LOPT_DNS_USE_GLOBAL_CACHE(3)
256 
257        CURLOPT_BUFFERSIZE
258               Ask for smaller buffer size. See CURLOPT_BUFFERSIZE(3)
259 
260        CURLOPT_PORT
261               Port number to connect to. See CURLOPT_PORT(3)
262 
263        CURLOPT_TCP_NODELAY
264               Disable the Nagle algorithm. See CURLOPT_TCP_NODELAY(3)
265 
266        CURLOPT_ADDRESS_SCOPE
267               IPv6 scope for local addresses. See CURLOPT_ADDRESS_SCOPE(3)
268 
269        CURLOPT_TCP_KEEPALIVE
270               Enable TCP keep-alive. See CURLOPT_TCP_KEEPALIVE(3)
271 
272        CURLOPT_TCP_KEEPIDLE
273               Idle time before sending keep-alive. See CURLOPT_TCP_KEEPIDLE(3)
274 
275        CURLOPT_TCP_KEEPINTVL
276               Interval between keep-alive probes. See CURLOPT_TCP_KEEPINTVL(3)
277 
278        CURLOPT_UNIX_SOCKET_PATH
279               Path to a Unix domain socket. See CURLOPT_UNIX_SOCKET_PATH(3)
280 
281 NAMES and PASSWORDS OPTIONS (Authentication)
282        CURLOPT_NETRC
283               Enable .netrc parsing. See CURLOPT_NETRC(3)
284 
285        CURLOPT_NETRC_FILE
286               .netrc file name. See CURLOPT_NETRC_FILE(3)
287 
288        CURLOPT_USERPWD
289               User name and password. See CURLOPT_USERPWD(3)
290 
291        CURLOPT_PROXYUSERPWD
292               Proxy user name and password. See CURLOPT_PROXYUSERPWD(3)
293 
294        CURLOPT_USERNAME
295               User name. See CURLOPT_USERNAME(3)
296 
297        CURLOPT_PASSWORD
298               Password. See CURLOPT_PASSWORD(3)
299 
300        CURLOPT_LOGIN_OPTIONS
301               Login options. See CURLOPT_LOGIN_OPTIONS(3)
302 
303        CURLOPT_PROXYUSERNAME
304               Proxy user name. See CURLOPT_PROXYUSERNAME(3)
305 
306        CURLOPT_PROXYPASSWORD
307               Proxy password. See CURLOPT_PROXYPASSWORD(3)
308 
309        CURLOPT_HTTPAUTH
310               HTTP server authentication methods. See CURLOPT_HTTPAUTH(3)
311 
312        CURLOPT_TLSAUTH_USERNAME
313               TLS authentication user name. See CURLOPT_TLSAUTH_USERNAME(3)
314 
315        CURLOPT_TLSAUTH_PASSWORD
316               TLS authentication password. See CURLOPT_TLSAUTH_PASSWORD(3)
317 
318        CURLOPT_TLSAUTH_TYPE
319               TLS authentication methods. See CURLOPT_TLSAUTH_TYPE(3)
320 
321        CURLOPT_PROXYAUTH
322               HTTP proxy authentication methods. See CURLOPT_PROXYAUTH(3)
323 
324        CURLOPT_SASL_IR
325               Enable SASL initial response. See CURLOPT_SASL_IR(3)
326 
327        CURLOPT_XOAUTH2_BEARER
328               OAuth2 bearer token. See CURLOPT_XOAUTH2_BEARER(3)
329 
330 HTTP OPTIONS
331        CURLOPT_AUTOREFERER
332               Automatically set Referer: header. See CURLOPT_AUTOREFERER(3)
333 
334        CURLOPT_ACCEPT_ENCODING
335               Accept-Encoding  and  automatic  decompressing  data.  See  CUR‐
336               LOPT_ACCEPT_ENCODING(3)
337 
338        CURLOPT_TRANSFER_ENCODING
339               Request Transfer-Encoding. See CURLOPT_TRANSFER_ENCODING(3)
340 
341        CURLOPT_FOLLOWLOCATION
342               Follow HTTP redirects. See CURLOPT_FOLLOWLOCATION(3)
343 
344        CURLOPT_UNRESTRICTED_AUTH
345               Do not restrict authentication to original  host.  CURLOPT_UNRE‐
346               STRICTED_AUTH(3)
347 
348        CURLOPT_MAXREDIRS
349               Maximum number of redirects to follow. See CURLOPT_MAXREDIRS(3)
350 
351        CURLOPT_POSTREDIR
352               How to act on redirects after POST. See CURLOPT_POSTREDIR(3)
353 
354        CURLOPT_PUT
355               Issue a HTTP PUT request. See CURLOPT_PUT(3)
356 
357        CURLOPT_POST
358               Issue a HTTP POST request. See CURLOPT_POST(3)
359 
360        CURLOPT_POSTFIELDS
361               Send a POST with this data. See CURLOPT_POSTFIELDS(3)
362 
363        CURLOPT_POSTFIELDSIZE
364               The POST data is this big. See CURLOPT_POSTFIELDSIZE(3)
365 
366        CURLOPT_POSTFIELDSIZE_LARGE
367               The POST data is this big. See CURLOPT_POSTFIELDSIZE_LARGE(3)
368 
369        CURLOPT_COPYPOSTFIELDS
370               Send  a POST with this data - and copy it. See CURLOPT_COPYPOST‐
371               FIELDS(3)
372 
373        CURLOPT_HTTPPOST
374               Multipart formpost HTTP POST. See CURLOPT_HTTPPOST(3)
375 
376        CURLOPT_REFERER
377               Referer: header. See CURLOPT_REFERER(3)
378 
379        CURLOPT_USERAGENT
380               User-Agent: header. See CURLOPT_USERAGENT(3)
381 
382        CURLOPT_HTTPHEADER
383               Custom HTTP headers. See CURLOPT_HTTPHEADER(3)
384 
385        CURLOPT_HEADEROPT
386               Control custom headers. See CURLOPT_HEADEROPT(3)
387 
388        CURLOPT_PROXYHEADER
389               Custom HTTP headers sent to proxy. See CURLOPT_PROXYHEADER(3)
390 
391        CURLOPT_HTTP200ALIASES
392               Alternative versions of 200 OK. See CURLOPT_HTTP200ALIASES(3)
393 
394        CURLOPT_COOKIE
395               Cookie(s) to send. See CURLOPT_COOKIE(3)
396 
397        CURLOPT_COOKIEFILE
398               File to read cookies from. See CURLOPT_COOKIEFILE(3)
399 
400        CURLOPT_COOKIEJAR
401               File to write cookies to. See CURLOPT_COOKIEJAR(3)
402 
403        CURLOPT_COOKIESESSION
404               Start a new cookie session. See CURLOPT_COOKIESESSION(3)
405 
406        CURLOPT_COOKIELIST
407               Add or control cookies. See CURLOPT_COOKIELIST(3)
408 
409        CURLOPT_HTTPGET
410               Do a HTTP GET request. See CURLOPT_HTTPGET(3)
411 
412        CURLOPT_HTTP_VERSION
413               HTTP version to use. CURLOPT_HTTP_VERSION(3)
414 
415        CURLOPT_IGNORE_CONTENT_LENGTH
416               Ignore Content-Length. See CURLOPT_IGNORE_CONTENT_LENGTH(3)
417 
418        CURLOPT_HTTP_CONTENT_DECODING
419               Disable Content decoding. See CURLOPT_HTTP_CONTENT_DECODING(3)
420 
421        CURLOPT_HTTP_TRANSFER_DECODING
422               Disable Transfer decoding. See CURLOPT_HTTP_TRANSFER_DECODING(3)
423 
424        CURLOPT_EXPECT_100_TIMEOUT_MS
425               100-continue timeout. See CURLOPT_EXPECT_100_TIMEOUT_MS(3)
426 
427        CURLOPT_PIPEWAIT
428               Wait on connection to pipeline on it. See CURLOPT_PIPEWAIT(3)
429 
430        CURLOPT_STREAM_DEPENDS
431               This   HTTP/2   stream   depends   on    another.    See    CUR‐
432               LOPT_STREAM_DEPENDS(3)
433 
434        CURLOPT_STREAM_DEPENDS_E
435               This  HTTP/2  stream  depends  on  another exclusively. See CUR‐
436               LOPT_STREAM_DEPENDS_E(3)
437 
438        CURLOPT_STREAM_WEIGHT
439               Set this HTTP/2 stream's weight. See CURLOPT_STREAM_WEIGHT(3)
440 
441 SMTP OPTIONS
442        CURLOPT_MAIL_FROM
443               Address of the sender. See CURLOPT_MAIL_FROM(3)
444 
445        CURLOPT_MAIL_RCPT
446               Address of the recipients. See CURLOPT_MAIL_RCPT(3)
447 
448        CURLOPT_MAIL_AUTH
449               Authentication address. See CURLOPT_MAIL_AUTH(3)
450 
451 TFTP OPTIONS
452        CURLOPT_TFTP_BLKSIZE
453               TFTP block size. See CURLOPT_TFTP_BLKSIZE(3)
454 
455 FTP OPTIONS
456        CURLOPT_FTPPORT
457               Use active FTP. See CURLOPT_FTPPORT(3)
458 
459        CURLOPT_QUOTE
460               Commands to run before transfer. See CURLOPT_QUOTE(3)
461 
462        CURLOPT_POSTQUOTE
463               Commands to run after transfer. See CURLOPT_POSTQUOTE(3)
464 
465        CURLOPT_PREQUOTE
466               Commands to run just before transfer. See CURLOPT_PREQUOTE(3)
467 
468        CURLOPT_APPEND
469               Append to remote file. See CURLOPT_APPEND(3)
470 
471        CURLOPT_FTP_USE_EPRT
472               Use EPTR. See CURLOPT_FTP_USE_EPRT(3)
473 
474        CURLOPT_FTP_USE_EPSV
475               Use EPSV. See CURLOPT_FTP_USE_EPSV(3)
476 
477        CURLOPT_FTP_USE_PRET
478               Use PRET. See CURLOPT_FTP_USE_PRET(3)
479 
480        CURLOPT_FTP_CREATE_MISSING_DIRS
481               Create missing  directories  on  the  remote  server.  See  CUR‐
482               LOPT_FTP_CREATE_MISSING_DIRS(3)
483 
484        CURLOPT_FTP_RESPONSE_TIMEOUT
485               Timeout for FTP responses. See CURLOPT_FTP_RESPONSE_TIMEOUT(3)
486 
487        CURLOPT_FTP_ALTERNATIVE_TO_USER
488               Alternative to USER. See CURLOPT_FTP_ALTERNATIVE_TO_USER(3)
489 
490        CURLOPT_FTP_SKIP_PASV_IP
491               Ignore   the   IP   address  in  the  PASV  response.  See  CUR‐
492               LOPT_FTP_SKIP_PASV_IP(3)
493 
494        CURLOPT_FTPSSLAUTH
495               Control how to do TLS. See CURLOPT_FTPSSLAUTH(3)
496 
497        CURLOPT_FTP_SSL_CCC
498               Back  to  non-TLS   again   after   authentication.   See   CUR‐
499               LOPT_FTP_SSL_CCC(3)
500 
501        CURLOPT_FTP_ACCOUNT
502               Send ACCT command. See CURLOPT_FTP_ACCOUNT(3)
503 
504        CURLOPT_FTP_FILEMETHOD
505               Specify how to reach files. See CURLOPT_FTP_FILEMETHOD(3)
506 
507 RTSP OPTIONS
508        CURLOPT_RTSP_REQUEST
509               RTSP request. See CURLOPT_RTSP_REQUEST(3)
510 
511        CURLOPT_RTSP_SESSION_ID
512               RTSP session-id. See CURLOPT_RTSP_SESSION_ID(3)
513 
514        CURLOPT_RTSP_STREAM_URI
515               RTSP stream URI. See CURLOPT_RTSP_STREAM_URI(3)
516 
517        CURLOPT_RTSP_TRANSPORT
518               RTSP Transport: header. See CURLOPT_RTSP_TRANSPORT(3)
519 
520        CURLOPT_RTSP_CLIENT_CSEQ
521               Client CSEQ number. See CURLOPT_RTSP_CLIENT_CSEQ(3)
522 
523        CURLOPT_RTSP_SERVER_CSEQ
524               CSEQ   number   for   RTSP   Server->Client  request.  See  CUR‐
525               LOPT_RTSP_SERVER_CSEQ(3)
526 
527 PROTOCOL OPTIONS
528        CURLOPT_TRANSFERTEXT
529               Use text transfer. See CURLOPT_TRANSFERTEXT(3)
530 
531        CURLOPT_PROXY_TRANSFER_MODE
532               Add transfer mode to URL over  proxy.  See  CURLOPT_PROXY_TRANS‐
533               FER_MODE(3)
534 
535        CURLOPT_CRLF
536               Convert newlines. See CURLOPT_CRLF(3)
537 
538        CURLOPT_RANGE
539               Range requests. See CURLOPT_RANGE(3)
540 
541        CURLOPT_RESUME_FROM
542               Resume a transfer. See CURLOPT_RESUME_FROM(3)
543 
544        CURLOPT_RESUME_FROM_LARGE
545               Resume a transfer. See CURLOPT_RESUME_FROM_LARGE(3)
546 
547        CURLOPT_CUSTOMREQUEST
548               Custom request/method. See CURLOPT_CUSTOMREQUEST(3)
549 
550        CURLOPT_FILETIME
551               Request file modification date and time. See CURLOPT_FILETIME(3)
552 
553        CURLOPT_DIRLISTONLY
554               List only. See CURLOPT_DIRLISTONLY(3)
555 
556        CURLOPT_NOBODY
557               Do not get the body contents. See CURLOPT_NOBODY(3)
558 
559        CURLOPT_INFILESIZE
560               Size of file to send. CURLOPT_INFILESIZE(3)
561 
562        CURLOPT_INFILESIZE_LARGE
563               Size of file to send. CURLOPT_INFILESIZE_LARGE(3)
564 
565        CURLOPT_UPLOAD
566               Upload data. See CURLOPT_UPLOAD(3)
567 
568        CURLOPT_MAXFILESIZE
569               Maximum file size to get. See CURLOPT_MAXFILESIZE(3)
570 
571        CURLOPT_MAXFILESIZE_LARGE
572               Maximum file size to get. See CURLOPT_MAXFILESIZE_LARGE(3)
573 
574        CURLOPT_TIMECONDITION
575               Make a time conditional request. See CURLOPT_TIMECONDITION(3)
576 
577        CURLOPT_TIMEVALUE
578               Time   value   for   the  time  conditional  request.  See  CUR‐
579               LOPT_TIMEVALUE(3)
580 
581 CONNECTION OPTIONS
582        CURLOPT_TIMEOUT
583               Timeout for the entire request. See CURLOPT_TIMEOUT(3)
584 
585        CURLOPT_TIMEOUT_MS
586               Millisecond timeout for the entire  request.  See  CURLOPT_TIME‐
587               OUT_MS(3)
588 
589        CURLOPT_LOW_SPEED_LIMIT
590               Low    speed    limit    to    abort    transfer.    See    CUR‐
591               LOPT_LOW_SPEED_LIMIT(3)
592 
593        CURLOPT_LOW_SPEED_TIME
594               Time to be below the speed to trigger low speed abort. See  CUR‐
595               LOPT_LOW_SPEED_TIME(3)
596 
597        CURLOPT_MAX_SEND_SPEED_LARGE
598               Cap     the     upload     speed     to     this.    See    CUR‐
599               LOPT_MAX_SEND_SPEED_LARGE(3)
600 
601        CURLOPT_MAX_RECV_SPEED_LARGE
602               Cap    the    download    speed    to     this.     See     CUR‐
603               LOPT_MAX_RECV_SPEED_LARGE(3)
604 
605        CURLOPT_MAXCONNECTS
606               Maximum  number  of connections in the connection pool. See CUR‐
607               LOPT_MAXCONNECTS(3)
608 
609        CURLOPT_FRESH_CONNECT
610               Use a new connection. CURLOPT_FRESH_CONNECT(3)
611 
612        CURLOPT_FORBID_REUSE
613               Prevent subsequent connections  from  re-using  this.  See  CUR‐
614               LOPT_FORBID_REUSE(3)
615 
616        CURLOPT_CONNECTTIMEOUT
617               Timeout for the connection phase. See CURLOPT_CONNECTTIMEOUT(3)
618 
619        CURLOPT_CONNECTTIMEOUT_MS
620               Millisecond  timeout  for the connection phase. See CURLOPT_CON‐
621               NECTTIMEOUT_MS(3)
622 
623        CURLOPT_IPRESOLVE
624               IP version to resolve to. See CURLOPT_IPRESOLVE(3)
625 
626        CURLOPT_CONNECT_ONLY
627               Only connect, nothing else. See CURLOPT_CONNECT_ONLY(3)
628 
629        CURLOPT_USE_SSL
630               Use TLS/SSL. See CURLOPT_USE_SSL(3)
631 
632        CURLOPT_RESOLVE
633               Provide fixed/fake name resolves. See CURLOPT_RESOLVE(3)
634 
635        CURLOPT_DNS_INTERFACE
636               Bind name resolves to  this  interface.  See  CURLOPT_DNS_INTER‐
637               FACE(3)
638 
639        CURLOPT_DNS_LOCAL_IP4
640               Bind   name   resolves   to   this   IP4   address.   See   CUR‐
641               LOPT_DNS_LOCAL_IP4(3)
642 
643        CURLOPT_DNS_LOCAL_IP6
644               Bind   name   resolves   to   this   IP6   address.   See   CUR‐
645               LOPT_DNS_LOCAL_IP6(3)
646 
647        CURLOPT_DNS_SERVERS
648               Preferred DNS servers. See CURLOPT_DNS_SERVERS(3)
649 
650        CURLOPT_ACCEPTTIMEOUT_MS
651               Timeout  for  waiting  for  the  server's  connect  back  to  be
652               accepted. See CURLOPT_ACCEPTTIMEOUT_MS(3)
653 
654 SSL and SECURITY OPTIONS
655        CURLOPT_SSLCERT
656               Client cert. See CURLOPT_SSLCERT(3)
657 
658        CURLOPT_SSLCERTTYPE
659               Client cert type.  See CURLOPT_SSLCERTTYPE(3)
660 
661        CURLOPT_SSLKEY
662               Client key. See CURLOPT_SSLKEY(3)
663 
664        CURLOPT_SSLKEYTYPE
665               Client key type. See CURLOPT_SSLKEYTYPE(3)
666 
667        CURLOPT_KEYPASSWD
668               Client key password. See CURLOPT_KEYPASSWD(3)
669 
670        CURLOPT_SSL_ENABLE_ALPN
671               Enable use of ALPN. See CURLOPT_SSL_ENABLE_ALPN(3)
672 
673        CURLOPT_SSL_ENABLE_NPN
674               Enable use of NPN. See CURLOPT_SSL_ENABLE_NPN(3)
675 
676        CURLOPT_SSLENGINE
677               Use identifier with SSL engine. See CURLOPT_SSLENGINE(3)
678 
679        CURLOPT_SSLENGINE_DEFAULT
680               Default SSL engine. See CURLOPT_SSLENGINE_DEFAULT(3)
681 
682        CURLOPT_SSL_FALSESTART
683               Enable TLS False Start. See CURLOPT_SSL_FALSESTART(3)
684 
685        CURLOPT_SSLVERSION
686               SSL version to use. See CURLOPT_SSLVERSION(3)
687 
688        CURLOPT_SSL_VERIFYHOST
689               Verify  the  host  name  in  the  SSL  certificate.   See   CUR‐
690               LOPT_SSL_VERIFYHOST(3)
691 
692        CURLOPT_SSL_VERIFYPEER
693               Verify the SSL certificate. See CURLOPT_SSL_VERIFYPEER(3)
694 
695        CURLOPT_SSL_VERIFYSTATUS
696               Verify  the SSL certificate's status. See CURLOPT_SSL_VERIFYSTA‐
697               TUS(3)
698 
699        CURLOPT_CAINFO
700               CA cert bundle. See CURLOPT_CAINFO(3)
701 
702        CURLOPT_ISSUERCERT
703               Issuer certificate. See CURLOPT_ISSUERCERT(3)
704 
705        CURLOPT_CAPATH
706               Path to CA cert bundle. See CURLOPT_CAPATH(3)
707 
708        CURLOPT_CRLFILE
709               Certificate Revocation List. See CURLOPT_CRLFILE(3)
710 
711        CURLOPT_CERTINFO
712               Extract certificate info. See CURLOPT_CERTINFO(3)
713 
714        CURLOPT_PINNEDPUBLICKEY
715               Set pinned SSL public key . See CURLOPT_PINNEDPUBLICKEY(3)
716 
717        CURLOPT_RANDOM_FILE
718               Provide  source  for  entropy  random  data.  See   CURLOPT_RAN‐
719               DOM_FILE(3)
720 
721        CURLOPT_EGDSOCKET
722               Identify EGD socket for entropy. See CURLOPT_EGDSOCKET(3)
723 
724        CURLOPT_SSL_CIPHER_LIST
725               Ciphers to use. See CURLOPT_SSL_CIPHER_LIST(3)
726 
727        CURLOPT_SSL_SESSIONID_CACHE
728               Disable SSL session-id cache. See CURLOPT_SSL_SESSIONID_CACHE(3)
729 
730        CURLOPT_SSL_OPTIONS
731               Control SSL behavior. See CURLOPT_SSL_OPTIONS(3)
732 
733        CURLOPT_KRBLEVEL
734               Kerberos security level. See CURLOPT_KRBLEVEL(3)
735 
736        CURLOPT_GSSAPI_DELEGATION
737               Disable GSS-API delegation. See CURLOPT_GSSAPI_DELEGATION(3)
738 
739 SSH OPTIONS
740        CURLOPT_SSH_AUTH_TYPES
741               SSH authentication types. See CURLOPT_SSH_AUTH_TYPES(3)
742 
743        CURLOPT_SSH_HOST_PUBLIC_KEY_MD5
744               MD5 of host's public key. See CURLOPT_SSH_HOST_PUBLIC_KEY_MD5(3)
745 
746        CURLOPT_SSH_PUBLIC_KEYFILE
747               File name of public key. See CURLOPT_SSH_PUBLIC_KEYFILE(3)
748 
749        CURLOPT_SSH_PRIVATE_KEYFILE
750               File name of private key. See CURLOPT_SSH_PRIVATE_KEYFILE(3)
751 
752        CURLOPT_SSH_KNOWNHOSTS
753               File name with known hosts. See CURLOPT_SSH_KNOWNHOSTS(3)
754 
755        CURLOPT_SSH_KEYFUNCTION
756               Callback  for  known  hosts  handling.  See CURLOPT_SSH_KEYFUNC‐
757               TION(3)
758 
759        CURLOPT_SSH_KEYDATA
760               Custom pointer to pass to ssh key callback. See CURLOPT_SSH_KEY‐
761               DATA(3)
762 
763 OTHER OPTIONS
764        CURLOPT_PRIVATE
765               Private pointer to store. See CURLOPT_PRIVATE(3)
766 
767        CURLOPT_SHARE
768               Share object to use. See CURLOPT_SHARE(3)
769 
770        CURLOPT_NEW_FILE_PERMS
771               Mode    for    creating    new    remote    files.    See   CUR‐
772               LOPT_NEW_FILE_PERMS(3)
773 
774        CURLOPT_NEW_DIRECTORY_PERMS
775               Mode for creating new remote directories. See CURLOPT_NEW_DIREC‐
776               TORY_PERMS(3)
777 
778 TELNET OPTIONS
779        CURLOPT_TELNETOPTIONS
780               TELNET options. See CURLOPT_TELNETOPTIONS(3)
781 
782 RETURN VALUE
783        CURLE_OK  (zero) means that the option was set properly, non-zero means
784        an error occurred as <curl/curl.h> defines. See  the  libcurl-errors(3)
785        man page for the full list with descriptions.
786 
787        If  you  try  to set an option that libcurl doesn't know about, perhaps
788        because the library is too old to support it or the option was  removed
789        in a recent version, this function will return CURLE_UNKNOWN_OPTION. If
790        support for the option was disabled at  compile-time,  it  will  return
791        CURLE_NOT_BUILT_IN.
792 
793 EXAMPLE
794        CURL *curl = curl_easy_init();
795        if(curl) {
796          CURLcode res;
797          curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
798          res = curl_easy_perform(curl);
799          curl_easy_cleanup(curl);
800        }
801 
802 SEE ALSO
803        curl_easy_init(3),       curl_easy_cleanup(3),      curl_easy_reset(3),
804        curl_easy_getinfo(3), curl_multi_setopt(3),
805 
806 libcurl 7.38.0                    25 Jun 2014              curl_easy_setopt(3)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM