我是靠谱客的博主 谦让眼神,最近开发中收集的这篇文章主要介绍c++服务器回传给网页的中文是乱码项目场景:问题描述原因分析:解决方案:延申一下,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

项目场景:

在做c++服务器的时候,回发给网页的中文是乱码,明明在响应消息报头指定了text/plain; charset=utf-8。

更新,就是我错了。我指定的消息报头没有成功回发,导致乱码,而在html中增加<meta charset= “UTF-8”>恰好弥补了编码这一点。
经过实验,这两者有一个就可以保证中文显示正常,是或的关系。
1、响应消息报头指定了text/plain; charset=utf-8
2、在html中增加<meta charset= “UTF-8”>


问题描述

服务器回传给网页的html代码里的中文是正常的,
在这里插入图片描述

但显示出来就是乱码
在这里插入图片描述

原因分析:

总的来说就是服务器的编码方式和浏览器的编码方式不一致,在浏览器改变编码方式也可以解决问题,但我的谷歌浏览器没找到设置编码。主要还是想寻求一种通用的方法。百思不得其解,搜索引擎上也都是关于java的,有现成的函数很方便的解决,关于c++的极少。


解决方案:

不仅仅在响应消息报头指定编码方式,还要在html页面指定内容的编码方式。
可以在响应消息报头指定编码方式,也可以在html页面指定内容的编码方式。
添加如下语句,设置html的编码方式:
在这里插入图片描述

延申一下

在做的时候可能还会遇到这样的问题,url是中文怎么办?
URL 中的汉字默认是存为 Unicode 码,就是说浏览器发送给服务器的url中文是以Unicode 码存在的,其实就是浏览器地址栏输入的中文,看起来是中文,但按回车发起来就是unicode码了。
在这里插入图片描述
服务器接到之后,要先进行解码操作,将其转换为正常中文,才能完成索引。
如果需要将中文路径作为url,比如html中href=的指定,那么还需要将中文转换为Unicode 码进行返回。
因此,在访问带有汉字的文件时,应该在服务器回发数据给浏览器时进行"编码"操作,在浏览器请求资源目录的汉字文件时进行“解码”操作。

最后

以上就是谦让眼神为你收集整理的c++服务器回传给网页的中文是乱码项目场景:问题描述原因分析:解决方案:延申一下的全部内容,希望文章能够帮你解决c++服务器回传给网页的中文是乱码项目场景:问题描述原因分析:解决方案:延申一下所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(35)

评论列表共有 0 条评论

立即
投稿
返回
顶部