ホームページ  >  記事  >  バックエンド開発  >  phpカールがサーバーのgzip圧縮によって返されたデータを収集して返す場合はどうすればよいですか?

phpカールがサーバーのgzip圧縮によって返されたデータを収集して返す場合はどうすればよいですか?

WBOY
WBOYオリジナル
2016-06-23 13:42:17936ブラウズ

一般的なサーバーは、gzip 圧縮されたデータをランダムに返しません。通常、クライアント リクエストのヘッダーには、ブラウザーで受け入れられる圧縮方法


Accept-Encoding:gzip,deflate,sdch
が含まれます。


ここでは、gzip、deflate、sdch の 3 つのメソッドを説明します。理解できない場合は、Gu Gedu Niang を参照してください。一部のサーバーでは gzip 圧縮を強制的に返すようになりましたが、データを収集したところ、返されたデータは文字化けしており、まったく読み取ることも使用することもできませんでした。その際、すぐにマニュアル

を確認したところ、実際には にパラメータがあることがわかりました。 curl,curl_setopt($ch, CURLOPT_ENCODING,'gzip');

マニュアルでは次のように説明されています:


CURLOPT_ENCODING

HTTP リクエスト ヘッダーの "Accept-Encoding: " の値。サポートされているエンコーディングは「identity」、「deflate」、「gzip」です。空の文字列「」の場合、リクエスト ヘッダーはサポートされているすべてのエンコード タイプを送信します。

この一文を追加するだけでOKです
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。