チャンク化されたデータを取得するために、いくつかのクラスの実装に苦労しましたが、成功しませんでした。以下は、問題のある単純化されたコード モジュールです。Web をサーフィンした後、過去に問題があったようです (2009 年、2010 年; バージョン 1.1、1.5)、今では解決されているはずです。このプロトコルの Android プラットフォームでの決定的な成功は見たことがありません。
ヘルプ!
無効なトークンを入力すると、何らかの応答が表示されます。Web サービスは、アプリケーション エラー メッセージで応答します。ただし、有効な URL とトークンはチャンクされたプロトコルの検出で応答するだけで (isChunked() は true を返します)、何も読み取られず、何もタイムアウトしません。
コマンド ラインから CURL を使用して発行されたまったく同じ URL は、期待どおりに機能し、連続したコンテンツ (Web サービスから公開されたデータ) を表示します。
受信ストリームを強制するために行末を追加するなど、Web サービス側のハックはありますか??
URI uri;
try {
uri = new URI("http://cws.mycompany.com/service/events?accesskeyid=8226f3ddc65a420abc391d8f1fe12de44766146762_1298174060748");
HttpClient httpClient=new DefaultHttpClient();
HttpGet httpGet=new HttpGet(uri);
ResponseHandler<String> rh=new BasicResponseHandler();
String responseString=httpClient.execute(httpGet,rh);
Log.d(TAG, "response as string:\n" + responseString);
} catch (URISyntaxException e) {
Log.e(TAG, e.toString());
e.printStackTrace();
} catch (ClientProtocolException e) {
Log.e(TAG, e.toString());
e.printStackTrace();
} catch (IOException e) {
Log.e(TAG, e.toString());
e.printStackTrace();
}