cURL 必知必會

cURL 必知必會(英文版網(wǎng)址)

cURL 項目的組成部分

cURL 項目主要由兩部分組成:

  • 命令行工具 curl;
  • 提供 C API 的 libcurl 庫什黑;

這兩個工具和庫都基于網(wǎng)絡(luò)協(xié)議断国,為指定的 URL 資源執(zhí)行網(wǎng)絡(luò)傳輸伶丐。

curl 的默認(rèn)配置文件

  • 類 Unix 系統(tǒng):.curlrc 文件。
  • Windows 系統(tǒng):_curlrc 文件翼悴。

-h:列出所有的命令行選項

列出 curl 命令行工具所有的選項赡矢,并提供簡要的說明:

curl -h
curl --help

輸出 curl 整個手冊以及常見的用例教程:

curl --manual

-v:詳細(xì)(verbose)模式

讓 curl 切換到詳細(xì)模式:

curl -v http://example.com
curl --verbose http://example.com

讓 curl 打開詳細(xì)模式并進(jìn)行 HTTP 重定向:

curl -vL http://example.com
curl --verbose --location http://example.com

關(guān)閉詳細(xì)模式:

curl --no-verbose http://example.com

不使用 schema

URL 是 curl 的操作對象溅潜。實際上肋演,更準(zhǔn)確的名稱是 URI(統(tǒng)一資源標(biāo)識符)抑诸。

URL 以 “schema” 作為開頭,schema 是 “http://” 這部分內(nèi)容的官方名稱奸绷,用以告訴 curl 傳入的 URL 使用了哪個協(xié)議层玲。

curl 允許用戶省略 URL 的 schema 部分。curl 會根據(jù)主機(jī)名的第一部分猜測要使用哪種協(xié)議《杳保可檢測的協(xié)議包括 FTP、DICT授药、LDAP悔叽、IMAP娇澎、SMTP 和 POP3。沒有提供 schema 的其他 URL 將默認(rèn)使用 HTTP 協(xié)議戚啥。

可以通過 --proto-default 選項將默認(rèn)協(xié)議修改為 HTTP 以外的其他協(xié)議

身份驗證

使用給定的用戶名和密碼列出 FTP 服務(wù)器目錄中的內(nèi)容:

curl ftp://user:password@example.com/

Basic 身份驗證:要讓 curl 發(fā)出帶有身份驗證的 HTTP 請求拖云,可以用 -u--user 選項提供用戶名和密碼:

curl -u admin:123456 http://example.com/

如果要讓 curl 先確認(rèn)服務(wù)器是否真的需要身份驗證江兢,可以使用 --anyauth 選項邑贴,它會自動使用 curl 所知道的最安全的身份驗證方法。curl 將嘗試無須身份驗證的請求繁疤,然后在必要時使用身份驗證:

curl --anyauth --user admin:123456 http://example.com/

使用 .netrc 文件或配置文件可以避免在命令行上指定用戶名和密碼

主機(jī)名或地址

指定 IPV4 地址:

curl http://127.0.0.1/

使用 IPV6 地址需要將其放在方括號中

curl http://[::1]/
curl http://[2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b]/

指定 FTP 類型

告訴 curl FTP 資源的文件類型以適應(yīng)不同的傳輸模式。

ASCII 類型:

curl "ftp://example.com/foo;type=A"

二進(jìn)制類型(默認(rèn)):

curl "ftp://example.com/foo;type=I"

目錄類型:

curl "ftp://example.com/foo;type=D"

多個選項和多個 URL

curl 支持?jǐn)?shù)百個命令行選項和無限數(shù)量的 URL叹放。

curl 會在處理完最后一個 URL 后返回一個退出碼。

可以通過 --fail-early 選項讓 curl 在第一次出現(xiàn)錯誤時就退出俱恶。

--next:在一組選項和 URL 之間插入間隔

當(dāng)命令行解析到 --next 選項時,它會將后面的選項應(yīng)用于下一組 URL端仰。

curl --location http://example.com/1 --next
     --data sendthis http://example.com/2 --next
     --head http://example.com/3

URL 通配

curl 使用保留符號 []{} 進(jìn)行通配。可以使用 -g--globoff 禁用它臀稚。

數(shù)值范圍窜管、字母范圍幕帆、列表

可以使用 [N-M] 語法來指定一個數(shù)值范圍,其中 N 是起始索引碱茁,M 是結(jié)束索引。

請求 100 個以數(shù)字命名的圖像:

curl -O http://example.com/[1-100].png
curl -O http://example.com/[001-100].png

支持指定步進(jìn)募壕,指定步進(jìn)為2:

curl -O http://example.com/[1-100:2].png

curl 也可以處理字母范圍

curl -O http://example.com/section[a-z].html

通過花括號指定完整的列表:

curl -O http://example.com/{one,two,three,alpha,beta}.html

組合使用多個通配符

下載 Ben缰泡、Alice 和 Frank 的圖像棘钞,并且需要 100x100 和 1000x1000 的分辨率:

curl -O http://example.com/{Ben,Alice,Frank}-{100x100,1000x1000}.jpg

獲取 Web 服務(wù)器和郵件服務(wù)器一周內(nèi)的日志:

curl -O http://example.com/{web,mail}-log[0-6].txt

--config:配置文件

使用 -K 或者 --config 選項讓 curl 從特定的文件中讀取更多的命令行選項:

curl -K cmdline.txt http://example.com

cmdline.txt 文件中包含了你輸入的每行命令:

# 這是注釋硝逢,我們要求跟蹤重定向
--location
# 要求發(fā)送 HEAD 請求
--head
# 支持使用不帶破折號的長選項
location
# 命令行選項的參數(shù)必須與該選項處于同一行
user-agent "Everything-is-an-agent"
# 支持在選項與參數(shù)之間使用=或者:
user-agent = "Everything-is-an-agent"
# 如果參數(shù)中帶有空格叫乌,則必須使用雙引號
# 如果想在配置文件中指定 URL憨奸,則必須使用 --url 或 url
url = "http://example.com"

進(jìn)度指示器

  • 進(jìn)度指示器顯示的單位是字節(jié)(Byte, 1 Byte = 8 bit)數(shù)和每秒字節(jié)數(shù)似芝。
  • 通過 -s--silent 選項可以強(qiáng)制關(guān)閉進(jìn)度指示器。
  • 啟用靜默模式后,可以通過 -s--show-error 選項來要求它在發(fā)生錯誤時輸出錯誤信息蝇闭。
  • 通過 -#--progress-bar 選項使用一個更簡單的進(jìn)度指示器。

--trace--trace-ascii

--trace [filename] 選項可以將完整的跟蹤信息(十六進(jìn)制編碼)保存在指定的文件中逻悠。
--trace-ascii [filename] 可以將跟蹤信息轉(zhuǎn)化為 ASCII 編碼。
--trace-time,在輸出信息前添加高精度的時間戳琅豆。

curl --trace dump http://example.com

HTTP/2

在使用 HTTP/2 進(jìn)行文件傳輸時,curl 將發(fā)送和接收被壓縮的標(biāo)頭信息冻押。但是為了以可讀性和可理解的方式顯示傳出和傳入的 HTTP/2 標(biāo)頭信息,curl 將顯示未經(jīng)壓縮的版本

保存下載的內(nèi)容

可以通過 -o [filename]--output 保存下載內(nèi)容到指定的文件狈邑。

curl -o output.html http://example.com/

-O(大寫的 O)或 --remote-name:用 URL 指定的文件名保存內(nèi)容:

curl -O http://example.com/file.html

--compressed:壓縮

curl 可以要求 HTTP 和 HTTPS 服務(wù)器提供壓縮過的數(shù)據(jù)糕伐。

--compressed 請求服務(wù)器使用一種受支持的壓縮算法來壓縮數(shù)據(jù),curl 會在保存或發(fā)送數(shù)據(jù)到 stdout 之前對數(shù)據(jù)進(jìn)行解壓。

curl --compressed http://example.com/

壓縮傳輸編碼

客戶端要求服務(wù)器進(jìn)行壓縮傳輸編碼赞庶,如果服務(wù)器接受了,它將作出響應(yīng),并通過一個標(biāo)頭指明它將進(jìn)行壓縮編碼丧靡,curl 將在接收到數(shù)據(jù)時對其進(jìn)行解壓饭庞。

用戶可以通過 --tr-encoding 選項請求服務(wù)器進(jìn)行壓縮傳輸編碼:

curl --tr-encoding http://example.com/

不過需要注意的是绸狐,并非所有的 HTTP 服務(wù)器都支持這個特性葬凳。

shell 重定向

使用 > filename 將 stdout 重定向到指定文件中,使用 2>file 將 stderr (元數(shù)據(jù)或錯誤等)重定向到指定文件中镜豹。

curl http://example.com > files.html 2>errors

速率限定

在傳輸數(shù)據(jù)時,curl 會嘗試盡快完成任務(wù)昔期。它可以用于上傳和下載。

可以使用 --limit-rate [speed] 讓 curl 的速率不超過指定的字節(jié)/秒。

curl https://example.com/ --limit-rate 200k

最大的文件

為 curl 指定可接受的最大下載字節(jié)數(shù):

curl --max-filesize 100000 https://example.com/

在文件系統(tǒng)中保存元數(shù)據(jù)

在將下載的內(nèi)容保存到文件時,可以通過 --xattr 選項告訴 curl 將某些文件元數(shù)據(jù)也保存在“擴(kuò)展文件屬性”中人芽。

--raw

如果使用 --raw 選項,curl 會禁用所有內(nèi)部的 HTTP 內(nèi)容解碼或傳輸編碼,取而代之的是傳輸未經(jīng)修改的原始數(shù)據(jù)名挥。

如果你正在開發(fā)某種中間軟件,并希望將內(nèi)容傳給另一個 HTTP 客戶端讓它來解碼,那么這個選項就很有用了鞋既。

失敗重試

通常 curl 只會嘗試執(zhí)行一次傳輸不成功則返回錯誤畏邢。你可以使用 --retry 選項讓 curl 重試失敗的傳輸。

恢復(fù)下載

在恢復(fù)下載時,curl 會檢查本地已存在的文件的大小咆贬,然后向服務(wù)器請求剩余的內(nèi)容,并追加到本地的文件中。

-C--continue-at 選項可以告訴 curl 從哪里開始傳輸酌儒,選項的值可以是一個普通的數(shù)字字節(jié)偏移量酪夷,或者使用字符串 - 讓 curl 根據(jù)它所知道的信息自己決定從哪里開始傳輸插掂。

從字節(jié)偏移量為 100 的位置開始下載 FTP 文件:

curl --continue-at 100 ftp://example.com/bigfile

繼續(xù)之前中斷的下載:

curl --continue-at - ftp://example.com/bigfile

HTTP 區(qū)間

可以用 -r 或者 --range 讓 curl 發(fā)起區(qū)間請求酝润,請求特定區(qū)間的數(shù)據(jù)构回。

向遠(yuǎn)程服務(wù)器請求特定字節(jié)范圍的內(nèi)容脐供。請求從偏移量 100 開始的 1000 個字節(jié):

curl --range 100-1099 ftp://example.com/bigfile

請求前 200 個字節(jié)的數(shù)據(jù):

curl -r 0-199 http://example.com/

索引 200 之后的所有內(nèi)容:

curl -r 200- http://example.com/

從索引 0 處獲取 200 個字節(jié)掏愁,再從索引 1000 處獲取 200 個字節(jié):

curl -r 0-199,1000-199 http://example.com/

連接超時

可以用 --connect-timeout 設(shè)置 curl 允許嘗試連接的最長時間沦泌。

keepalive

curl 默認(rèn)使用 TCP 的 keepalive 特性實現(xiàn)長連接。

使用 --no-keepalive 禁用 keepalive 特性:

curl --no-keepalive https://example.com/

使用 --keepalive-time 來指定發(fā)送探測的頻率,默認(rèn)為 60 秒。

將 TCP “ping” 之間的間隔改為 5 分鐘:

curl --keepalive-time 300 https://example.com/

允許的最長時間

在 curl 拋出超時錯誤碼(28)并退出前,可以用 -m--max-time 選項告訴 curl 最長有多少時間(以秒為單位)可用憔古。當(dāng)指定的時間耗盡即碗,無論當(dāng)時發(fā)生什么内舟,curl 都會退出验游,即使它正在傳輸數(shù)據(jù)。

指定的最長時間可以用小數(shù)表示炒俱,0.5 表示 50 毫秒推盛,2.37 表示 2370 毫秒:

curl --max-time 5.5 https://example.com/

傳輸速率慢到一定程度就退出

你可以告訴 curl榔昔,如果傳輸速率低于某個特定值,并且在某個時間段內(nèi)一直低于這個值瘪菌,那么就放棄傳輸撒会。

例如,如果 15 秒內(nèi)的傳輸速率低于 1000 字節(jié)/秒师妙,則停止傳輸:

curl --speed-time 15 --speed-limit 1000 https://example.com/

啟用 TLS

使用 --ss1 選項意味著 cur1 會嘗試將連接升級到 TLS,但如果失敗默穴,它仍將繼續(xù)使用明文協(xié)議來執(zhí)行傳輸怔檩。

curl --ssl http://example.com/file.txt

如果一定要使用 TLS 連接,可以使用 -ssl-reqd 選項蓄诽,使用這個選項時如果 curl 無法成功進(jìn)行 TLS 協(xié)商薛训,傳輸就會失敗。

curl --ssl-reqd http://example.com/file.txt

HTTP 版本

從 2016 年年中開始仑氛,curl 默認(rèn)用 HTTP/1.1 連接 HTTP 服務(wù)器乙埃。如果要連接到 HTTPS 服務(wù)器,并且你的 libcurl 內(nèi)置了 HTTP/2 功能锯岖,那么 cur1 將嘗試使用 HTTP/2介袜,或在協(xié)商失敗時降級至 HTTP/1.1。默認(rèn)情況下嚎莉,不支持 HTTP/2 的 curl 將使用 hTTP/1.1米酬。

HTTP POST

POST 是為將數(shù)據(jù)發(fā)送到 Web 應(yīng)用而發(fā)明的 HTTP 方法,也是 HTML 表單中最常用的方法趋箩。它通常會向接收者發(fā)送相對少量的數(shù)據(jù)塊赃额。

在表單中填充好數(shù)據(jù)后,瀏覽器以“URL編碼”的形式(以&符號分隔的一系列鍵值對)將數(shù)據(jù)發(fā)送出去叫确√迹可以用 curl 的 -d-data 選項發(fā)送這樣的數(shù)據(jù),如下所示:

curl -d 'name=admin&shoesize=12' http://example.com/

Content-Type

用 curl 的 -d-data 選項發(fā)送 POST 請求時竹勉,請求中默認(rèn)會包含一個類似 Content-Type: application/X-www-form-urlencoded 這樣的標(biāo)頭飞盆。

如果想將 JSON POST 到服務(wù)器,并且準(zhǔn)確地告訴服務(wù)器你發(fā)送的內(nèi)容是什么類型次乓,可以參見如下代碼:

curl -d '{json}' -H 'Content-Type:application/json' http://example.com/

POST 二進(jìn)制內(nèi)容

--data-binary @filename 選項可以讓 curl 從文件中讀取二進(jìn)制內(nèi)容吓歇。

curl --data-binary @filename http://example.com/

URL 編碼

curl 提供了 --data-urlencode 選項,可以讓用戶輸入未經(jīng)編碼的數(shù)據(jù)票腰,然后讓 curl 自動編碼城看。

轉(zhuǎn)換為 GET

-G--get 選項可以將 -d 選項指定的數(shù)據(jù)附加到 URL 右邊,并使用 “?” 隔離杏慰,然后讓 curl 用 GET 方法發(fā)送數(shù)據(jù)测柠。

curl --get --data <data> <url>

curl --include \
     http://localhost:7001/api/v1/applications \
     --get --data 'name1=value1&name2=value2'

分塊編碼的 POST

通過使用分塊傳輸編碼,curl 將逐塊發(fā)送 POST 數(shù)據(jù)缘滥,每個數(shù)據(jù)塊中會包含塊的大小轰胁。

curl -H "Transfer-Encoding: chunked" -d "payload to send" http://example.com/

使用 curl 發(fā)送表單

multipart formpost 是指 HTTP 客戶端在 HTML 表單的 enctype 屬性被設(shè)置為 “multipart/form-data” 時所發(fā)送的內(nèi)容。

HTML 示例:

<form action="submit.cgi" method="post" enctype=“multipart/form-data”>
  Name: <input type="text" name="person"><br>    
  File: <input type="file" name="secret"><br>  
  <input type="submit" value="提交">
</form>

使用 curl 時朝扼,可以通過-F(或 --form)選項添加每個單獨(dú)的 multipart赃阀。

使用 curl 發(fā)送以上的表單數(shù)據(jù):

curl -F person=anonymous -F secret=@file.txt http://example.com/submit.cgi

HTTP 重定向

顧名思義,“重定向”是指服務(wù)器向客戶端發(fā)送指令擎颖,而不是返回客戶端想要的內(nèi)容凹耙。服務(wù)器好像在說:“去這里找你想要的東西〕σ牵”

但并非所有的重定向都是一樣的肖抱。重定向是永久性的嗎?客戶端在下一個請求中應(yīng)該使用哪種請求方法异旧?

進(jìn)行重定向時需要發(fā)送一個 Location: 標(biāo)頭其中包含新的 URI意述,可以是絕對路徑或相對路徑。

自定義標(biāo)頭

可以通過 -H--header 選項自定義標(biāo)頭吮蛹。

curl -H "Host: test.example" http://example.com/

referer

當(dāng)用戶點(diǎn)擊網(wǎng)頁上的鏈接時荤崇,瀏覽器會將用戶帶到下一個 URL,它會在新的請求中添加 referer 標(biāo)頭潮针,表面請求的來源术荤。

可以在 curl 中用 -e--referer 選項來設(shè)置 referer 標(biāo)頭:

curl --referer http://comes-form.example.com https://example.com/

User-Agent

客戶端可以在請求中設(shè)置 User-Agent 標(biāo)頭,用于告訴服務(wù)器它屬于哪種用戶代理每篷。有時服務(wù)器會檢查這個標(biāo)頭瓣戚,并根據(jù)標(biāo)頭內(nèi)容決定如何作出響應(yīng)端圈。

可以用 -A--user-agent 選項加上要使用的字符串來設(shè)置你喜歡的值:

從文件中讀取 cookie

curl 使用的 cookie 文件格式叫做 Netscape cookie 格式。

-b 指示讓 curl 從指定的文件讀取初始 cookie:

curl -L -b cookies.txt https://example.com/

將 cookie 寫入文件

讓 curl 在退出之前將已知的 cookie 寫入文件(也就是 cookie jar)中子库。

可以用 -c 選項指定 cookie jar舱权,讓 curl 將 cookie 寫入該文件中:

curl -c cookie-jar.txt https://example.com/

新 cookie 會話

刷新 cookie 會話意味著所有會話 cookie 都將被丟棄,這相當(dāng)于重啟瀏覽器仑嗅。

可以通過 -j--junk-session-cookies 選項讓 curl 開始新的 cookie 會話:

curl -j -b cookies.txt https://example.com/

HTTP/2

默認(rèn)情況下宴倍,發(fā)起 HTTP 請求時,curl 默認(rèn)用 HTTP/1.1 連接 HTTP 服務(wù)器仓技。而發(fā)起 HTTPS 請求時鸵贬,curl 會默認(rèn)使用 HTTP/2

可以用以下代碼讓 curl 請求服務(wù)器時使用 HTTP/2:

curl --http2 http://example.com/

如果你已經(jīng)知道服務(wù)器支持 HTTP/2(例如脖捻,在自己的受控環(huán)境中阔逼,你確切地知道服務(wù)器上運(yùn)行的是什么),那么可以通過 --http2-prior-knowledge 選項進(jìn)行快捷的 HTTP/2 “協(xié)商”郭变。

多路復(fù)用

HTTP/2 協(xié)議的主要特性之一是能夠在同一物理連接上復(fù)用多個邏輯流颜价。在使用 curl 命令行工具時,你無法利用這個很酷的特性诉濒,因為 curl 嚴(yán)格按照串行的方式執(zhí)行網(wǎng)絡(luò)請求周伦,一個接一個,后一個要在前一個結(jié)束后才能開始未荒。

希望未來的 curl 版本可以支持這項特性专挪。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市片排,隨后出現(xiàn)的幾起案子寨腔,更是在濱河造成了極大的恐慌,老刑警劉巖率寡,帶你破解...
    沈念sama閱讀 222,681評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件迫卢,死亡現(xiàn)場離奇詭異,居然都是意外死亡冶共,警方通過查閱死者的電腦和手機(jī)乾蛤,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,205評論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來捅僵,“玉大人家卖,你說我怎么就攤上這事∶沓” “怎么了上荡?”我有些...
    開封第一講書人閱讀 169,421評論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長馒闷。 經(jīng)常有香客問我酪捡,道長叁征,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,114評論 1 300
  • 正文 為了忘掉前任沛善,我火速辦了婚禮航揉,結(jié)果婚禮上塞祈,老公的妹妹穿的比我還像新娘金刁。我一直安慰自己,他們只是感情好议薪,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,116評論 6 398
  • 文/花漫 我一把揭開白布尤蛮。 她就那樣靜靜地躺著,像睡著了一般斯议。 火紅的嫁衣襯著肌膚如雪产捞。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,713評論 1 312
  • 那天哼御,我揣著相機(jī)與錄音坯临,去河邊找鬼。 笑死恋昼,一個胖子當(dāng)著我的面吹牛看靠,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播液肌,決...
    沈念sama閱讀 41,170評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼挟炬,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了嗦哆?” 一聲冷哼從身側(cè)響起谤祖,我...
    開封第一講書人閱讀 40,116評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎老速,沒想到半個月后粥喜,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,651評論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡橘券,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,714評論 3 342
  • 正文 我和宋清朗相戀三年额湘,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片约郁。...
    茶點(diǎn)故事閱讀 40,865評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡缩挑,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出鬓梅,到底是詐尸還是另有隱情供置,我是刑警寧澤,帶...
    沈念sama閱讀 36,527評論 5 351
  • 正文 年R本政府宣布绽快,位于F島的核電站芥丧,受9級特大地震影響紧阔,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜续担,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,211評論 3 336
  • 文/蒙蒙 一擅耽、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧物遇,春花似錦乖仇、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,699評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至诗舰,卻和暖如春警儒,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背眶根。 一陣腳步聲響...
    開封第一講書人閱讀 33,814評論 1 274
  • 我被黑心中介騙來泰國打工蜀铲, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人属百。 一個月前我還...
    沈念sama閱讀 49,299評論 3 379
  • 正文 我出身青樓记劝,卻偏偏與公主長得像,于是被迫代替她去往敵國和親诸老。 傳聞我的和親對象是個殘疾皇子隆夯,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,870評論 2 361

推薦閱讀更多精彩內(nèi)容

  • 一、什么是CURL别伏? cURL 是一個利用URL語法規(guī)定來傳輸文件和數(shù)據(jù)的工具蹄衷,支持很多協(xié)議,如HTTP厘肮、FTP愧口、...
    伊Summer閱讀 1,276評論 0 4
  • curl是一個命令行工具,通過指定的URL來上傳或下載數(shù)據(jù)类茂,并將數(shù)據(jù)展示出來耍属。curl中的c表示client,而U...
    起名難倒英雄漢閱讀 197,182評論 6 64
  • 一巩检、什么是CURL厚骗? cURL 是一個利用URL語法規(guī)定來傳輸文件和數(shù)據(jù)的工具,支持很多協(xié)議兢哭,如HTTP领舰、FTP、...
    茶藝瑤閱讀 4,608評論 0 6
  • 【php中的curl】php中curl的詳細(xì)解說 轉(zhuǎn)載2014年03月19日 14:38:05 124700 這幾...
    雨黎_95c0閱讀 2,856評論 0 0
  • cURL是一個利用URL語法規(guī)定來傳輸文件和數(shù)據(jù)的工具,支持很多協(xié)議和選項冲秽,如HTTP舍咖、FTP、TELNET等锉桑,能...
    司馬東陽閱讀 1,443評論 0 6