Q&A
解決済
4回答
6267閲覧
総合スコア26
HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。
REST(Representational State Transfer)はwebアプリケーションの構築スタイルの一種です。HTTP GET/POSTによってリクエストを送信し、レスポンスはXMLで返されます。SOAPのようなRPCの構築と比べるとサーバからクライアントを分離することが出来る為、人気です。
2グッド
4クリップ
投稿2022/12/21 03:12
2
4
サーバー側でレスポンスをgzipなどで圧縮し、クライアント側でそれを展開することで通信容量を少なくし、コンテンツを取得する速度を速くすることも出来ますが、 一方で圧縮・展開に追加のリソースかかり、それが表示時間の増加に繋がってしまう恐れもあるかと思います。
一般的なプラクティスとして、jsonを返す一般的なRESTサーバー(TwitterやGithubのAPIなど)では、レスポンスは圧縮するべきなのでしょうか。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
質問へのコメント
回答4件
0
一般的も何も、「リクエストがgzipを要求してきたらgzipで返す」というのが妥当かと思います。そのためにAccept-Encodingヘッダがあります(MDN)。
Accept-Encoding
投稿2022/12/21 04:31
総合スコア146905
回答へのコメント
2022/12/21 04:34
ベストアンサー
jsonを返す一般的なRESTサーバー(TwitterやGithubのAPIなど)では、レスポンスは圧縮するべきなのでしょうか。
ざっと探してみると Google API は API performance tips の「Compression using gzip」あたりの記載を読むと、クライアント側が gzip で圧縮してレスポンスしてと指示をした際に gzip 圧縮したレスポンスを返すようです。
Google 等に準じるということであれば、API レスポンスは「デフォルトは圧縮しないがユーザーからのリクエストに応じて圧縮して返すように切り替えれるようにする」という感じになるのではないでしょうか。
投稿2022/12/21 04:36
総合スコア25234
大半はウェブサーバーが勝手に処理してくれる。自分では何もしてないつもりでもすでに圧縮されている。
ウェブサーバーを挟んでないなら自分で圧縮だけど色々考慮することがあるのでウェブサーバーに任せたい。
投稿2022/12/21 05:58
退会済みユーザー
総合スコア0
今までプレーンテキストで返すAPIしか出会ったことがないです。単に圧縮モード対応に気付いてないだけかもしれませんが。
パフォーマンス要件次第で良いんじゃないでしょうか。
投稿2022/12/21 05:23
総合スコア1453
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
15分調べてもわからないことはteratailで質問しよう!
ただいまの回答率85.29%
質問をまとめることで思考を整理して素早く解決
テンプレート機能で簡単に質問をまとめる
一般的なRESTサーバーは、jsonレスポンスをgzipなどで圧縮するべきでしょうか
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/12/21 04:34