masalibの日記

システム開発、運用と猫の写真ブログです

ChromeのデベロッパーモードからcURLのコマンド作成

ツイッターを見ていたらchromeで知らない機能があった


メモとして残す

cURLとは・・・

”さまざまなプロトコルを用いてデータを転送するライブラリとコマンドラインツールを提供するプロジェクトである。cURLプロジェクトは libcurl と cURL の2つの成果を生んでいる”

Wikiより参照
私はHTTPのAPIなどをたたくときによく使います

ChromeデベロッパーモードでcURLを作成

Chromeデベロッパーモード(Windowsの場合はF12で起動)というものがあります。その中のネットワークタブを表示するとブラウザとサーバーとのやり取りが表示されます
f:id:masalib:20180605171827p:plain

インフラエンジニアならブラウザ(GUI)じゃなくてCUIでしょ!!という事で、ブラウザでアクセスした内容をコマンドにします

コマンドにしたいリクエストを右クリックして
f:id:masalib:20180605172246p:plain
 ↓ copyを選択して
f:id:masalib:20180605172318p:plain
 Copy as cURL(cmd)を選択します

コピーした内容

curl "http://masalib.hatenablog.com/entry/2018/06/04/190000" -H "Connection: keep-alive" -H "Cache-Control: max-age=0" -H "Upgrade-Insecure-Requests: 1" -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.62 Safari/537.36" -H "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8" -H "Referer: http://masalib.hatenablog.com/" -H "Accept-Encoding: gzip, deflate" -H "Accept-Language: ja,en-US;q=0.9,en;q=0.8" -H "Cookie: __gads=ID=xxxxaaxxxe6baxex1x0xcx8x7x51x318" --compressed

このコピーでうれしいのはcookieの内容もコピーしてくれる事です
今回はgetのリクエストですが、postでしたら送った内容(パラメータ)をコマンドに変換してくれます
ちなみにCopy as cURL(cmd)ではなくCopy all as cURL(cmd)にするとすべてのリクエストをコマンドにしてくれます
APIを叩くときに使えるかと思う