クライアントWebブラウザーのエンコード問題を修正するために追加できるHTTP GET応答はありますか?
-
01-10-2019 - |
質問
http getに応じて次の静的テキストを出力するマイクロコントローラーで、UIPライブラリを使用してcで埋め込まれたWebサーバーが記述されています。以下に、cリテラル文字列として示されています。
"HTTP/1.0 200 OK\r\n"
"Server: UIP/1.0 (http://www.something.com/)\r\n"
"Content-type: text\html\r\n"
その直後、doctype string と ... が来ますu003C/html>要求されたページの本文。私はこのコードを書きませんでしたが、それは私に手渡されました。今、私はそれをオペラ、ファイアフォックス、インターネットエクスプローラーで試しています。 Webページ全体はANSI/Cを使用しており、特別な文字列やバイトは使用していません。しかし、オペラにのみ適切にロードおよび表示されます。何らかの理由で、この特定のUIPベースのWebブラウザーは、IE 8またはFirefoxでレンダリングされません。
![alt text] [1
HTTPヘッダーに何を追加して、Micro-Web-Serverエンコードの基本/デフォルトC/ANSIコードページをオペラだけでなく、すべてのブラウザーに対して適切に検出することができますか?
解決
静的テキストをこれに置き換えてみてください。
"HTTP/1.0 200 OK\r\n"
"Server: UIP/1.0 (http://www.something.com/)\r\n"
"Content-type: text/html; charset=utf-8\r\n"
ノート :Backslash( '')文字はESACPE文字です。静的文字列では、「テキスト html」で「 h」をしました。
ノート :「charset = utf-8」部分は、ファイルがUTF-8エンコードである場合にのみ便利です
所属していません StackOverflow