1

コメントを含む UIWebView の Web ページをリクエストしています (UIWebView が設定を調整するために使用する非表示の情報が含まれているため、コメントは不可欠です)。

Wifi 経由では問題なく動作しますが、3G 経由で UIWebView (Javascript を使用) からソースをクエリすると、すべての空白とコメントが削除された出力が返されます。

私の最初の本能は、サーバーが圧縮を適用しているが、クライアントはそれを拒否しているということです。これを要求している iOS の設定があるか、3G ネットワーク オペレーター (この場合は O2 - UK) が何かを取り除いている可能性があります。

誰かがこれを見た、または解決策を知っていますか?

よろしくお願いします!

4

3 に答える 3

2

それは確かにISPがコメントを取り除いたものでした.....私がこれを解決した方法は、クライアントにページ内にJS関数を設定させ、元々コメントに隠されていた応答を返すことでした(とにかくはるかにクリーンなソリューション)。

次に、次の情報を使用して情報を取得します。

[webView stringByEvaluatingJavaScriptFromString:@"functionName();"];
于 2011-06-09T11:20:34.267 に答える
1

ISPはヘッダーを調べ、帯域幅を節約するためにコメントと空白を削除しています。このデータを独自の属性でマークアップタグに埋め込むことができます。例えば:

<div myDataAttr='id_123'>
 ...
</div>

編集

HTML5カスタムデータ属性の使用を検討することもできます。

<div data-id='123' data-name='John'>
...
</div>
于 2011-06-07T16:19:29.420 に答える
1

テザリングされたラップトップを Firefox でいつでもテストし、ユーザー エージェントを次のように UIWebView が送信するものに設定できます。

Mozilla/5.0 (iPhone; U; CPU OS 4_3_2 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Mobile

次に、ブラウザでソースを表示するだけです。

于 2011-06-07T16:03:16.353 に答える