16
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

curlでContent-Encoding HTTP圧縮転送 リクエスト レスポンス

Posted at

この記事の内容は
curl 7.52.1
gzip 1.6
GNU bash, version 4.4.12(1)-release
で動作することを確認しました。

curlコマンドオプションの説明
curl - How To Use

レスポンス

curl --compressed url
  • curlはwebサーバーへAccept-Encodingヘッダーを設定してリクエストを送る
  • Accept-Encodingヘッダーには、curlが対応する圧縮方式のリスト(gzip, deflate,...など)が書かれている
  • サーバーは対応していれば、コンテンツ(レスポンスボディ)を圧縮して応答を返す
  • サーバーはレスポンスにContent-Encodingヘッダーを含める
  • Content-Encodingには使用された圧縮形式が書かれる
  • curlは圧縮されたコンテンツを解凍して出力する

サーバーから送信されたgzipを解凍せずそのまま欲しい

curl --compressed --raw url

圧縮されたままのレスポンスデータが欲しい場合は、rawオプションを追加すればcurlは自動で解凍しない。

リクエスト

gzip -c src | curl -X POST --data-binary @- -H "Content-Encoding: gzip" url

POSTするデータが大きすぎる場合は、Argument list too longエラーになる場合がある。そのときは標準入力から渡す。
--data-binary @-
https://qiita.com/aosho235/items/d89bb027db0c5662d8c5
@ファイルから渡す
-標準入力

16
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?