概述
背景:
需要在windows 10(svn服务器)上发送rbt post请求到 centos 7上(reviewboard服务器),创建reviewboard请求。
安装软件:rbools
C:Program Files (x86)RBToolsPython27Libsite-packagesRBTools-1.0.2-py2.7.eggrbtoolsutils
由于windows10上是gb2312,centos 7上是utf-8,所以发送rbt post 请求中,如果带有中文,python2.7会报错(根据报错查看C:Program Files (x86)RBToolsPython27Libsite-packagesRBTools-1.0.2-py2.7.eggrbtoolsutilsencoding.py文件里面默认是utf-8,需要修改为gb2312),修改完后,reviewboard会创建成功,但是有乱码。
.reviewboardrc文件的格式也要正确,否则会报compile()参数为空的错误
通过wireshark抓包工具发现,发出去的是gb2312的编码,然后reviewboard服务器按照utf8解码,所以出错。
想通过如下代码完成将字符按照Utf8编码,然后解码为gb2312发出去,reviewboard端接收按照utf8解析。reviewboard端收到后,还是有少数字符乱码,比如中文字符"【"
powershell代码
$u8_bytes=[System.Text.Encoding]::UTF8.GetBytes("转码会戒心的八年gals科技发达ads【gm")
$u8Char=[System.Text.Encoding]::Default.GetString($u8_bytes)
echo $u8Char
最后采用网上的办法解决乱码问题:
打开 控制面板—>区域—>管理—>更改系统区域设置
勾选:使用Unicode UTF-8提供全球语音支持
具体如下:解决windowspowershell中文显示问号及乱码问题
网上很多用chcp 65001的不生效,还有修改注册表的没有去尝试。
最后
以上就是有魅力板栗为你收集整理的关于rbt post 远程创建reviewboard 请求遇到的中文乱码问题的全部内容,希望文章能够帮你解决关于rbt post 远程创建reviewboard 请求遇到的中文乱码问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复