8

すべてのデスクトップ接続、およびiPhoneなどのすべてのモバイルデバイスで正常に動作する新しいASP.NET MVCベースのWebアプリをプッシュしました。ただし、特定のページが3G接続(3G経由)で表示される場合ラップトップでドングル、またはモバイルデバイスで直接)、空白の白いページが提供され、コンテンツは一切含まれません。空のリクエストを返したかのように見えます。

特定のプロキシネットワークでは、同様の問題が発生しており、リクエストサイズが大きすぎると言われています。この種の意味は、特定のページにのみ影響するためです。モバイルネットワークプロバイダーは、あらゆる種類のプロキシサーバーを運用していると思います。

しかし、大きすぎるリクエストを構成するものについての情報を見つけることができませんでした。問題のページの1つをプロファイリングしました。これが、関連すると思われる統計の一部です。

HTMLコンテンツサイズ: 33.04KB圧縮、50.65KB非圧縮
すべてのスタイルシートの合計サイズ(4ファイル): 32.39KB圧縮、181.65KB非圧縮
すべての外部JSの合計サイズ(24ファイル): 227.82KB圧縮、851.46KB非圧縮

私にとって、コンテンツの圧縮サイズは過度ではありませんが、おそらく私は間違っています。私はこれに関する決定的な情報を見つけるのに本当に苦労したので、誰かがこの問題を解決するために私ができることについてアドバイスできますか?

4

2 に答える 2

2

MVCに関する限り、3Gネットワ​​ークはWifiと同じです。ただし、モバイルがキャッシュできるファイルのサイズには制限があります。その場合、これらのファイルはポストバックごとにサーバーから要求されます。

一部のページは機能するため、実際に検索するよりも、問題を特定の障害点に切り分けることをお勧めします。

FirefoxまたはChrome開発ツールで3GドングルとFirebugを使用して簡単に問題をデバッグできます

  • 問題の原因となっているJavaスクリプトエラーが最初からないことを確認してください
  • Javascript / css/htmlファイルが実際にクライアントに配信されていることを確認します。(クライアントのFirebug)。サーバーで、IISログまたはMSネットワークモニターを確認するか、トラフィックを監視できるhttpプロキシを作成します。快適な方を試してください。
  • css / java script / htmlだけで30近くのリクエストがあり、画像がある場合はカウントが高くなる可能性があります。これらすべてのリクエストを完了するには、3Gで永遠にかかる可能性があります。Javaスクリプトファイルをバンドルして、リクエスト数を減らしてみてください。ブラウザには、同時に実行できるリクエストの数に制限があり、全体的に追加されます(Firefoxは約10の同時リクエストを作成できると思います)。
于 2012-05-16T03:28:48.483 に答える
0

私たちは実際にこの問題を解決しました、そしてそれは応答ヘッダーのSet-Cookieアイテムのサイズと数にまで下がりました。ヘッダーに100近くのSet-Cookieアイテムがあるというバグが見つかりました。このバグを解決し、値のサイズを小さくすると問題が修正されました

于 2014-07-10T16:14:28.110 に答える