首页 > 解决方案 > Python 对象不是 JSON 可序列化的

问题描述

我正在尝试序列化 python 对象,但我在不可序列化的 json 中收到错误 Python 对象。

代码示例:


def get_json(self, header_object, decoded_data, footer_object):
        self.data = {}
        self.data["header"] = header_object
        self.data["payload"] = decoded_data
        self.data["footer"] = footer_object
        self.logger.debug("started")
        return json.dumps(self.data) #error on payload data

#payload data as below:
{
'force_start_flag': False,
'route': name: "e0"
   navigation_type: NAVIGATION_TYPE_UNKNOWN
   backtracking: false
   continuous: false
   waypoints {
     id: 1
     coordinate {
       type: COORDINATE_TYPE_WGS84
       x: 51.43604846903217
       y: 25.328392880304293
       z: 0.0
      }
     velocity: 2.2200000286102295
     constrained: true
     action {
        type: ACTION_TYPE_NONE
        duration: 0.0
     }
   }
}

正在从 protobuff 对象中解析有效负载数据,示例代码。

        mission_route_cmd = RouteCommandMsg()
        mission_route_payload = mission_route_cmd.FromString(payload_bytes)

        self.logger.debug("Mission Route Command....")
        self.logger.debug(mission_route_payload)

        payload_data = {}
        payload_data["force_start_flag"] = mission_route_payload.force_start_flag

        payload_data["route"] = mission_route_payload.route

序列化有效负载数据时出错

标签: pythonjsonprotocol-buffers

解决方案


推荐阅读