我有一个使用UIP库编写的嵌入式Web服务器,在MicroController中,该库在响应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"

此后,Doctype字符串和 ... u003C/html>请求页面主体。我没有编写此代码,但已交给我。现在,我在Opera,Firefox和Internet Explorer上尝试它。整个网页都使用ANSI/C,没有特殊字符串或字符。但是它仅在歌剧上正确加载和显示。由于某种原因,此特定的基于UIP的Web浏览器不会在IE 8或Firefox上呈现。

![alt文本] [1

我可以在HTTP标头中添加什么,以使我的Micro-Web-Server编码基本/默认的C/ANSI CodePage适当地为所有浏览器,而不仅仅是Opera?

有帮助吗?

解决方案

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

"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字符,在静态字符串中,您用“ text html”做了“ h”

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

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top