[譯]cURL入門使用指南

原文地址html

cURL爲什麼物?

cURL是一款流行的標準化工具,用來在命令行上執行HTTP請求。在多數系統中被默認安裝。對於web開發者而言有效地使用cURL是一項重要的技能。Curl常被視爲調試與自動化HTTP請求的首選。react

你須要先理解HTTP協議才能很好地使用curl。若是你對此並不熟悉,能夠閱讀HTTP與REST新手指南HTTPWatch的HTTP指南git

GET請求

若是你的系統中已經安裝了curl,你能夠發起一個最基礎的請求:github

curl http://google.com

POST請求

若是你想使用cURL來模擬form的提交,你能夠使用POST請求:
你能夠向 GraphQL hub發起一個POST請求。web

curl -H 'Content-Type:application/graphql' -XPOST https://www.graphqlhub.com/graphql?pretty=true -d '{ hn { topStories(limit: 2) { title url } } }'

注意這裏有三個可選參數:shell

  • -H - 用於須要傳入HTTP頭(header)的情形。在本例中將傳入'Content-Type'爲'application/graphql'的HTTP頭。瀏覽器

  • -XPOST - 用於須要POST請求的情形。cookie

  • -d - 用於其後的字符串是POST body的情形。在本例中,使用GraphGL查詢從Hacker News取回了前兩位的提交。網絡

谷歌瀏覽器 "Copy as cURL"功能

谷歌瀏覽器有一個逆天的功能,能夠將任意的HTTP操做複製爲cURL請求app

圖片描述

  1. 打開谷歌瀏覽器開發者工具

  2. 點擊'Network'切換按鈕

  3. 選擇一項你須要複製的網絡請求

  4. 右鍵並選擇"Copy as cURL"(個人版本是在"Copy"下有個二級菜單)

  5. 粘貼到"shell"

當你粘貼到shell中時你會發現很冗長,這是由於瀏覽器發送了巨多HTTP頭信息。雖然他們並會都對請求是否會成功其做用,但這是一個好的開始。當你須要驗證瀏覽器cookie或是調試一個受保護的請求時,該方法對你有很大幫助。

curl 'https://www.fullstackreact.com/assets/vendor/functions.js' -H 'if-none-match: W/"5dd95509e78d11579fc427e9f41889d6"' -H 'accept-encoding: gzip, deflate, sdch' -H 'accept-language: en-US,en;q=0.8' -H 'user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.75 Safari/537.36' -H 'accept: */*' -H 'cache-control: max-age=0' -H 'authority: www.fullstackreact.com' -H 'cookie: __cfduid=d309889bd8e027d878c2e16e0176e764d1463427161; _ga=GA1.2.135748265.1463427163; _gat=1' -H 'if-modified-since: Tue, 15 Mar 2016 03:37:56 GMT' -H 'referer: https://www.fullstackreact.com/' --compressed

雖然在功能上並不是徹底一致,可是簡化後的請求能夠是這樣的:

curl 'https://www.fullstackreact.com/assets/vendor/functions.js'

拓展閱讀

若是想知道更多有關cURL的只是能夠參考:

相關文章
相關標籤/搜索