Байт Json не может быть загружен после преобразования в строковый json
Json, который он получает в сообщении, представляет собой байтовый json, как показано ниже: b'{"_timestamp": 1636472787, "actual": 59.9, "target": 60.0}'
Код должен изменить байтовый Json на строковый Json и загрузить его для доступа к элементам, но когда я загружаю его, я получаю следующую ошибку:
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
Код:
import json
def handle_msg(topic, message):
m = message.decode("Utf-8")
print(json.loads(m))
Это происходит потому, что ваше сообщение имеет нулевое значение, а не то, которое вы ожидали. если вы напишете следующее, это будет работать для вас у меня работает следующее
message = b'{"_timestamp": 1636472787, "actual": 59.9, "target": 60.0}'
topic ="what ever"
import json
def handle_msg(topic, message):
m = message.decode("Utf-8")
print(json.loads(m))
handle_msg(topic, message)