问题

这个get请求中,中文部分被编码为了utf8,然后进行传输的。补充一点:post请求也会进行编码,看content-type: application/json;charset=utf-8
后端收到这个请求之后,把%E4%…数据取出来保存到了数据库。数据库里面保存一堆乱码,很别扭。

然后前台页面又把数据从数据库读出来

汉字的部分仍然是utf8编码的,送到前台页面,大家会看到一串乱码。。。。。这里要吐槽下,编码是你浏览器搞得,拿到数据后浏览器又不帮我解析,太坏了
解决方法
c程序解码 utf8->中文
cgi程序拿到请求,把编码的部分解码,然后再保存数据库
https://download.csdn.net/download/myWorld001/13059833

可以看到数据库里的就显示中文了
js解码
既然浏览器不帮我解码,那我就自己做了,我是在前台页面的js里面做的。
直接调用 decodeURI方法进行解码


本文探讨了解决前后端编码问题,如何在GET/POST请求中正确处理中文字符,包括CGI程序解码、数据库存储、前端JS解码以及c语言互转方法,以确保数据库和页面上中文显示正常。

676

被折叠的 条评论
为什么被折叠?



