Y at-il une réponse HTTP GET que je peux ajouter à corriger un problème d'encodage sur le navigateur Web client?

StackOverflow https://stackoverflow.com/questions/3154199

Question

J'ai un serveur Web intégré écrit en C en utilisant les bibliothèques uIP, dans un microcontrôleur, qui délivre le texte statique suivant en réponse à un http get. Il est indiqué ci-dessous comme une chaîne littérale C:

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

Juste après vient la chaîne doctype \ et \ ... \ body de la page demandée. Je n'ai pas écrit ce code, mais il a été remis à moi. Maintenant, je l'essayer sur Opera, Firefox et Internet Explorer. La page Web entière utilise Ansi / C et pas de chaînes ou d'octets spéciaux. Mais il charge et affiche correctement que sur Opera. Pour une raison quelconque cette uIP particulière basée sur un navigateur web ne sera pas rendu sur IE 8 ou Firefox.

[alt texte] [1]

Que puis-je ajouter à http têtes pour faire mon encodage micro-serveur web de défaut / base C / ansi codepage détecter correctement pour tous les navigateurs, et pas seulement l'opéra?

Hébergé par imgur.com

Était-ce utile?

La solution

Essayez de remplacer votre texte statique à celui-ci:

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

NOTE : la barre oblique inverse ( '\') caractère est un caractère de esacpe, dans votre chaîne statique, vous avez fait "\ h" avec votre "text \ html"

NOTE : Le "charset = utf-8" partie est utile que si vos fichiers sont encode utf-8

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top