是什么导致protobuf error PB error:“utf8”编解码器无法解码位置中的字节?

2024-09-29 17:25:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我的C++代码执行^ {< CD1>}并保存到ReDIS。你知道吗

然后python代码获取这个序列化信息并调用ParseFromString将其转换为protobuf消息,但是我得到了一个错误。你知道吗

我试图使用SerializeToString并保存,但没有成功。你知道吗

这是编码问题吗?你知道吗

错误:

Traceback (most recent call last):
  File "/data/home/redstarzhang/nn_media/nnq_msg_svr/nnq_msg_svr_watcher/bin/watcher.py", line 202, in nnq_msg_notification_callback
    nnq_msg_notify_proc(self.frame, body_json.get("body"))
  File "/data/home/redstarzhang/nn_media/nnq_msg_svr/nnq_msg_svr_watcher/bin/nnq_msg_notification_process.py", line 31, in nnq_msg_notify_proc
    msg_model = get_new_msg_model(frm, msg_id)
  File "/data/home/redstarzhang/nn_media/nnq_msg_svr/nnq_msg_svr_watcher/bin/usual_msg_notification_process.py", line 66, in get_new_msg_model
    msg_model.ParseFromString(fm_bytes)
  File "/home/redstarzhang/nn_media/nnq_msg_svr/nnq_msg_svr_watcher/lib/lib/python2.6/site-packages/google/protobuf/message.py", line 186, in ParseFromString
    self.MergeFromString(serialized)
  File "/home/redstarzhang/nn_media/nnq_msg_svr/nnq_msg_svr_watcher/lib/lib/python2.6/site-packages/google/protobuf/internal/python_message.py", line 841, in MergeFromString
    if self._InternalParse(serialized, 0, length) != length:
  File "/home/redstarzhang/nn_media/nnq_msg_svr/nnq_msg_svr_watcher/lib/lib/python2.6/site-packages/google/protobuf/internal/python_message.py", line 874, in InternalParse
    pos = field_decoder(buffer, new_pos, end, self, field_dict)
  File "/home/redstarzhang/nn_media/nnq_msg_svr/nnq_msg_svr_watcher/lib/lib/python2.6/site-packages/google/protobuf/internal/decoder.py", line 633, in DecodeRepeatedField
    if value.add()._InternalParse(buffer, pos, new_pos) != new_pos:
  File "/home/redstarzhang/nn_media/nnq_msg_svr/nnq_msg_svr_watcher/lib/lib/python2.6/site-packages/google/protobuf/internal/python_message.py", line 874, in InternalParse
    pos = field_decoder(buffer, new_pos, end, self, field_dict)
  File "/home/redstarzhang/nn_media/nnq_msg_svr/nnq_msg_svr_watcher/lib/lib/python2.6/site-packages/google/protobuf/internal/decoder.py", line 520, in DecodeField
    field_dict[key] = _ConvertToUnicode(buffer[pos:new_pos])
  File "/home/redstarzhang/nn_media/nnq_msg_svr/nnq_msg_svr_watcher/lib/lib/python2.6/site-packages/google/protobuf/internal/decoder.py", line 487, in _ConvertToUnicode
    return local_unicode(byte_str, 'utf-8')

PBErr: PB Error:'utf8' codec can't decode bytes in position 381-382: 'utf8' codec can't decode bytes in position 381-382: invalid continuation byte in field:...

PBErr: PB Error:'utf8' codec can't decode bytes in position 381-382: 'utf8' codec can't decode bytes in position 381-382: invalid continuation byte in field:


Tags: inpyposhomeliblinemsgnn

热门问题