0

我在微控制器中有一个使用 uIP 库用 C 语言编写的嵌入式 Web 服务器,它输出以下静态文本以响应 http get。它在下面显示为 C 文字字符串:

"HTTP/1.0 200 OK\r\n"
"Server: UIP/1.0 (http://www.something.com/)\r\n"
"Content-type: text\html\r\n"

紧随其后的是文档类型字符串 \ 和请求页面的 \ ... \</html> 正文。这段代码不是我写的,而是交给我的。现在我在 Opera、Firefox 和 Internet Explorer 上试用它。整个网页使用 Ansi/C,没有特殊的字符串或字节。但它只能在 Opera 上正确加载和显示。出于某种原因,这个基于 uIP 的特定网络浏览器不会在 IE 8 或 Firefox 上呈现。

![替代文字][1]

我可以在 http 标头中添加什么,以使我的基本/默认 C/ansi 代码页的微网络服务器编码在所有浏览器中都能被正确检测到,而不仅仅是歌剧?

4

1 回答 1

4

尝试将您的静态文本替换为此:

"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"

注意:反斜杠('\')字符是一个转义字符,在你的静态字符串中,你用你的“text\html”做了“\h”

注意:“charset=utf-8”部分仅在您的文件是 utf-8 编码时才有用

于 2010-06-30T23:49:34.947 回答