偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

21個curl命令練習(xí)

系統(tǒng) Linux
作為一項(xiàng)練習(xí),我嘗試考慮一項(xiàng)能夠在三節(jié) 45 分鐘課程內(nèi)學(xué)會的計算機(jī)技能。我認(rèn)為使用 curl 構(gòu)造 HTTP 請求也許就是這樣的一項(xiàng)技能,所以這里有一些 curl 練習(xí)作為實(shí)驗(yàn)!

 [[284851]]

最近,我對人們?nèi)绾螌W(xué)習(xí)新事物感興趣。我正在讀 Kathy Sierra 的好書《Badass: Making Users Awesome》,它探討了有關(guān)“刻意練習(xí)”的想法。這個想法是,你找到一個可以用三節(jié) 45 分鐘課程內(nèi)能夠?qū)W會的小技能,并專注于學(xué)習(xí)這項(xiàng)小技能。因此,作為一項(xiàng)練習(xí),我嘗試考慮一項(xiàng)能夠在三節(jié) 45 分鐘課程內(nèi)學(xué)會的計算機(jī)技能。

我認(rèn)為使用 curl 構(gòu)造 HTTP 請求也許就是這樣的一項(xiàng)技能,所以這里有一些 curl 練習(xí)作為實(shí)驗(yàn)!

什么是 curl ?

curl 是用于構(gòu)造 HTTP 請求的命令行工具。我喜歡使用 curl,因?yàn)樗軌蚝茌p松地測試服務(wù)器或 API 的行為是否符合預(yù)期,但是剛開始接觸它的時候會讓你感到一些困惑!

下面是一幅解釋 curl 常用命令行參數(shù)的漫畫 (在我的 Bite Size Networking 雜志的第 6 頁)。

熟能生巧

對于任何命令行工具,我認(rèn)為熟練使用是很有幫助的,能夠做到只輸入必要的命令真是太好了。例如,最近我在測試 Gumroad API,我只需要輸入:

  1. curl https://api.gumroad.com/v2/sales \
  2. -d "access_token=<SECRET>" \
  3. -X GET -d "before=2016-09-03"

就能從命令行中得到想要的結(jié)果。

21 個 curl 練習(xí)

這些練習(xí)是用來理解如何使用 curl 構(gòu)造不同種類的 HTTP 請求的,它們是故意有點(diǎn)重復(fù)的,基本上包含了我需要 curl 做的任何事情。

為了簡單起見,我們將對 https://httpbin.org 發(fā)起一系列 HTTP 請求,httpbin 接受 HTTP 請求,然后在響應(yīng)中回顯你所發(fā)起的 HTTP 請求。

  1. 請求 https://httpbin.org
  2. 請求 https://httpbin.org/anything,它將會解析你發(fā)起的請求,并且在響應(yīng)中回顯。curl 默認(rèn)發(fā)起的是 GET 請求
  3. https://httpbin.org/anything 發(fā)起 GET 請求
  4. https://httpbin.org/anything 發(fā)起 GET 請求,但是這次需要添加一些查詢參數(shù)(設(shè)置 value=panda
  5. 請求 Google 的 robots.txt 文件 (www.google.com/robots.txt)
  6. https://httpbin.org/anything 發(fā)起 GET 請求,并且設(shè)置請求頭為 User-Agent: elephant
  7. https://httpbin.org/anything 發(fā)起 DELETE 請求
  8. 請求 https://httpbin.org/anything 并獲取響應(yīng)頭信息
  9. https://httpbin.com/anything 發(fā)起請求體為 JSON {"value": "panda"} 的 POST 請求
  10. 發(fā)起與上一次相同的 POST 請求,但是這次要把請求頭中的 Content-Type 字段設(shè)置成 application/json(因?yàn)?POST 請求需要一個與請求體相匹配的 Content-Type 請求頭字段)。查看響應(yīng)體中的 json 字段,對比上一次得到的響應(yīng)體
  11. https://httpbin.org/anything 發(fā)起 GET 請求,并且在請求頭中設(shè)置 Accept-Encoding: gzip(將會發(fā)生什么?為什么會這樣?)
  12. 將一些 JSON 放在文件中,然后向 https://httpbin.org/anything 發(fā)起請求體為該文件的 POST 請求
  13. 設(shè)置請求頭為 Accept: image/png 并且向 https://httpbin.org/image 發(fā)起請求,將輸出保存為 PNG 文件,然后使用圖片瀏覽器打開。嘗試使用不同的 Accept: 字段去請求此 URL
  14. https://httpbin.org/anything 發(fā)起 PUT 請求
  15. 請求 https://httpbin.org/image/jpeg 并保存為文件,然后使用你的圖片編輯器打開這個文件
  16. 請求 https://www.twitter.com,你將會得到空的響應(yīng)。讓 curl 顯示出響應(yīng)頭信息,并嘗試找出響應(yīng)內(nèi)容為空的原因
  17. https://httpbin.org/anything 發(fā)起任意的請求,同時設(shè)置一些無意義的請求頭(例如:panda: elephant
  18. 請求 https://httpbin.org/status/404https://httpbin.org/status/200,然后再次請求它們并且讓 curl 顯示響應(yīng)頭信息
  19. 請求 https://httpbin.org/anything 并且設(shè)置用戶名和密碼(使用 -u username:password
  20. 設(shè)置 Accept-Language: es-ES 的請求頭用以下載 Twitter 的西班牙語主頁 (https://twitter.com)
  21. 使用 curl 向 Stripe API 發(fā)起請求(請查看 https://stripe.com/docs/development 了解如何使用,他們會給你一個測試用的 API key)。嘗試向 https://httpbin.org/anything 發(fā)起相同的請求

 

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2018-07-12 15:03:41

2013-09-29 10:14:24

YUM軟件包管理Linux YUM

2018-01-18 10:53:31

LinuxUnixcurl命令

2017-04-13 10:14:46

curl命令分析

2021-03-29 10:10:15

Linuxgrep

2011-04-20 11:04:23

LinuxHTTP 302

2013-07-22 10:01:03

JavascriptWeb

2021-04-22 10:14:46

Redis數(shù)據(jù)庫命令

2020-10-31 08:20:39

curl命令命令行互聯(lián)網(wǎng)

2023-05-04 23:54:02

JavaScrip代碼技巧

2010-12-13 10:36:45

CSS表格

2011-06-28 15:56:34

Qt

2024-04-09 14:21:15

HTML開發(fā)

2011-08-11 09:45:25

2023-11-30 15:30:19

Python編程語言

2021-04-07 10:52:10

Linux命令文件

2023-10-26 01:33:17

2023-08-27 16:19:09

JavaScript編程語言

2024-01-04 16:46:58

JavaScript開發(fā)

2014-08-27 09:45:30

JavaScriptJavaScript
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號