デバイスに Web ベースの UI を提供することになっている組み込みプロジェクト用の小さな Web サーバーを作成しました。PC ブラウザーを使用するとすべて正常に動作しますが、モバイル ブラウザーは、ページに関連付けられているすべてのリソース (css / js / 画像など) をロードできません。
私のサーバーは、リクエストのパイプラインなしの永続的な接続をサポートしています。現在、並列接続の最大数を 1 に減らしているため、一度に 1 つの要求のみが応答されます。
私のデバッグ観察では、クライアントは、最初に *.html ファイルを要求し、次にスタイル シートを要求した後、head にリストされているそれ以上のリソースの要求を停止します。クライアントは切断されません。
PC ブラウザでは許容され、モバイル ブラウザでは許容されない、どのような間違いを犯す可能性があるかについて、何か考えがありますか?
ほとんどのモバイル ブラウザーが実際にパイプラインを実装して使用していることをオンラインで読みました。さらに考えてみると、現在の実装では、パイプライン化されたリクエストに対処する際に問題がある可能性があることがわかりました。STM32 のメモリ不足を考慮して、受信バッファを送信バッファとして再利用します。すぐに確認します...
...いいえ、>>>ここで<<<と言われているにもかかわらず、Android標準ブラウザのDolphinまたはAndroid用Firefoxが実際に「キープアライブ」接続でリクエストをパイプライン処理することを確認できません。
もう 1 つ... Android SDK からエミュレーターを実行すると、完全に正常に動作します (少なくとも Android 4.2.2 の場合)。
必要な追加情報についてコメントしてください。