2

ここで説明されているように、GAE で Restlet アプリケーションを作成しています: 最初のアプリケーション

エンティティの JSON 表現を送り返していますが、これは機能します。しかし、これまでのところ、応答を圧縮して送信することに失敗しています。

「gzip」でaccept-encodingヘッダーをリクエストするために追加しようとしました。しかし、それは役に立ちませんでした。これが私がそれをテストした方法です:

URL url = new URL(address);
URLConnection urlConn = url.openConnection();
urlConn.setRequestProperty("Accept-Encoding", "gzip");
InputStream openStream = urlConn.getInputStream();

どんなアイデアでも大歓迎です!

4

1 に答える 1

1

圧縮を強制するには、 User-Agent ヘッダーも指定する必要があると思います。ドキュメントから:

https://developers.google.com/appengine/docs/python/runtime#Responses

クライアントが圧縮された (gzip 圧縮された) コンテンツを受け入れることができることを示す要求を含む HTTP ヘッダーをクライアントが送信する場合、App Engine は応答データを自動的に圧縮し、適切な応答ヘッダーを添付します。Accept-Encoding と User-Agent の両方の要求ヘッダーを使用して、クライアントが圧縮された応答を確実に受信できるかどうかを判断します。カスタム クライアントは、Accept-Encoding ヘッダーと User-Agent ヘッダーの両方に「gzip」の値を指定することで、コンテンツを強制的に圧縮できます。

于 2012-05-10T05:05:17.110 に答える