現在、Web サービスを実行しており、構築した iPhone クライアントに呼び出しを返しています。Web サービスは、soap の形式で xml を返しています。
私たちが気付いたのは、特定の関数を使用すると、UX の観点から受け入れられているよりも呼び出しに時間がかかるということです。
ここにいくつかのサンプルコードとサンプル xml があります
関数
public List<Foo> bar(....)
{
// stuff
return Bar;
}
結果が XML にシリアル化され、iPhone クライアントで使用される場所。
関数によって返される XML の例。(この xml は、ユーザーがクライアント アプリケーションをどのように使用するかによって、非常に大きくなる可能性があります)。
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<response xmlns="uri:Foo">
<result>
<p>
<num>string</num>
<d>int</d>
<pf>string</pf>
<pt>string</pt>
<ipk>boolean</ipk>
<ipa>boolean</ipa>
<va>
<ava xsi:nil="true" />
<ava xsi:nil="true" />
</va>
<dps>
<dp xsi:nil="true" />
<dp xsi:nil="true" />
</dps>
<dst>string</dst>
</p>
</result>
</response>
</soap:Body>
</soap:Envelope>
私が基本的に望んでいるのは、データを小さくすることです。できれば何らかの圧縮によって。
iPhone クライアントに返す前に XML のサイズを圧縮することはできますか?
gzipを見ましたが、ストリームで動作するため、実際には把握できませんでした。
ヒントや指針をいただければ幸いです。読んでくれてありがとう。