如何修复 Google Cloud 上 Telegram 机器人中的西里尔字母编码?

如何修复 Google Cloud 上 Telegram 机器人中的西里尔字母编码?

我制作了一个电报机器人,并在 Google Cloud 的 Ubuntu 服务器上启动了它。但是俄语(西里尔语)的机器人在编码方面存在问题。

机器人的文本工作者的配置以UTF-8保存,服务器上安装了RU的语言包。

怀疑服务器上文件的编码有问题,而谷歌云服务器的问题与机器人无关。问题可能出在哪里?

字符显示错误截图

答案1

从图片中,我无法验证单个字节的十六进制值,但这看起来实际上可能是 UTF-8 被误解为其他东西。

也许某些东西发送了错误的元数据,例如将字符集指定为某些传统的 8 位字符集,而接收方会相信这一点,而不是自动将其检测为 UTF-8?

或者也许字符集没有在某些配置文件中指定,并且创建元数据的任何内容(例如,HTTP 服务器输出的 Content-Type 标头中的字符集)都会应用一些旧的愚蠢的默认值,例如 ISO-8859-1?

相关内容