遇到这样一个问题:客户端通过url将一个字符串传给服务器,服务器再将它写入数据库。如果url中没有中文,当然没有问题。当有中文的时候,就会有编码的问题。
最后找到的解决方法是:
不能直接在浏览器地址栏中敲汉字,而是必须从utf-8编码的网页中链接过去。
比如: http://localhost/keyword/我 这样的链接,
直接在浏览器中敲,则会变成各种各样的地址(不同的浏览器有不同的做法,IE6会变成http://localhost/keyword/鎴,Firefox1.5会变成http://localhost/keyword/%CE%D2)
而通过utf-8编码的网页中链接过去,地址将变成http://localhost/keyword/%E6%88%91,这样才是正确的做法。
最后找到的解决方法是:
不能直接在浏览器地址栏中敲汉字,而是必须从utf-8编码的网页中链接过去。
比如: http://localhost/keyword/我 这样的链接,
直接在浏览器中敲,则会变成各种各样的地址(不同的浏览器有不同的做法,IE6会变成http://localhost/keyword/鎴,Firefox1.5会变成http://localhost/keyword/%CE%D2)
而通过utf-8编码的网页中链接过去,地址将变成http://localhost/keyword/%E6%88%91,这样才是正确的做法。
本文讨论了客户端通过URL传递中文字符串给服务器时遇到的编码问题。当URL中含有中文时,不同的浏览器会有不同的处理方式,导致服务器接收到的数据不一致。文章提出了解决方案:通过UTF-8编码的网页进行链接跳转,确保服务器能够正确接收和处理中文字符。
:Django中的url编码&spm=1001.2101.3001.5002&articleId=1938615&d=1&t=3&u=d2747832ae664a5dbd6291d2a36edab9)
2330

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



