HTTP APIリクエストのエンコーディングの受け入れを制御するにはどうすればよいですか?


11

データの増大に関する問題に関するこのチケットに関連しています

これまでのところ、APIのサポートでは、deflateではなくgzip要求することが推奨されていました。

ただし、すべての要求に対して受け入れられたエンコードとして最高の優先度でdeflateを設定するWP設定をオーバーライドする方法が見つかりません。

関連する機能- WP_Http_Encoding::is_available()WP_Http_Encoding::accept_encoding()

これを制御するためのフックやその他のオプションはありますか?


以前の回答はあなたの質問に対する肯定的な解決策ではなかったため、削除しました(むしろ、単純な回答は見つからないという回答)。さらに、前の回答を再確認したところ、コンテキストと例では短すぎる/薄すぎました。
ジョニーボジャングルス

私はもう一度質問を調べてみましたが(「これを制御するためのフックまたは他のオプションはありませんか?」)、WordPressのWP_Http_Encodingクラス(メソッドがis_available、a​​ccept_encoding、および解凍が見つかりました)。WP_httpにはフックとフィルターがいくつかありますが、デフレートに影響を与えるものはありません。残念ながら、WordPressのデフレートの優先順位を編集してコアにパッチを送信する以外に変更する方法はありません。WordPressがdeflateメソッドの設定を必要とするリクエストのコード例を提供できますか?
Jonnybojangles

@Jonnybojanglesは、問題のリンクをユースケースとして参照します...これはおそらくかなりエッジケースですが、これを制御できないと、変更する必要がある場合に大きな障害になります。
Rarst

回答:


4

かなりエッジケースですが、それでも受け入れられるエンコーディングタイプはフィルタリング可能でなければなりません。このヘッダーをきめ細かく制御すると便利な状況がいくつかあります(標準以外のエンコードを使用するAPIを追加する場合など)。

そのため、このためのストックフックはありませんが、Tracチケットを作成してパッチを送信しました。チケットでサポートに声をかけると、将来のリリースに組み込むのに十分なノイズが発生する可能性があります。


1
私はあまりトラクをしないので、そこで問題を提起してくれてありがとう。:)
Rarst

2

短い答え:いいえ、そのためのフックはありません。

長い回答:このオプションを本当に調整する必要がある場合は、WordPress Tracでパッチを送信することもできます。個人的に、私はこれまで問題を抱えたことはなくWP_Http_Encoding::accept_encoding()、あなたが述べた質問は手動で回答することで答えることができましたgzinflate()。私見、誰かがパッチを提出するまで、これが唯一の解決策のようです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.