Show Bạn có thể mã hóa danh sách Python hoặc từ điển ở định dạng JSON và sau đó giải mã nó trở lại vào danh sách hoặc từ điển như được minh họa trong sơ đồ dưới đây: Lưu ý: Nếu bạn thích video thì tôi đã tạo một video YouTube bao gồm- & nbsp này; Cách mã hóa, gửi và nhận dữ liệu JSON bằng máy khách Pythom MQTT Trước tiên bạn sẽ cần nhập mô -đun JSON import json Để mã hóa từ điển Python hoặc danh sách, hãy sử dụng json.dumps (dữ liệu) như hiển thị bên dưới:json.dumps(data) as show below: data_out=json.dumps(brokers_out) # encode object to JSON Để chuyển đổi từ chuỗi JSON sang đối tượng Python, hãy sử dụng json.loads (json_string) như hiển thị dưới đây:json.loads(json_string) as show below: m_in=json.loads(m_decode) #decode json data Tôi đã tạo ra một kịch bản Python đơn giản thể hiện quá trình này. Phần đầu tiên của tập lệnh mã hóa và giải mã một từ điển Python. Phần thứ hai của tập lệnh mã hóa một từ điển Python xuất bản dữ liệu cho nhà môi giới MQTT, sau đó nhận dữ liệu và giải mã nó trở lại từ điển. Bạn có thể tải xuống tập lệnh demo bằng cách sử dụng liên kết bên dưới Dưới đây là một bức ảnh màn hình của nó trông như thế nào khi chạy. Lưu ý các đối tượng Python được chuyển đổi thành một chuỗi bằng hàm json.dumps (). the Python objects is converted to a string by the json.dumps() function. Bây giờ chúng tôi chạy phần thứ hai của tập lệnh xuất bản dữ liệu JSON và sau đó nhận dữ liệu và giải mã nó trở lại từ một từ điển. Đây là cuộc gọi lại on_message nhận các tin nhắn và chuyển đổi nó thành từ điển.on_message Callback which receives the messages and converts it to a dictionary. def on_message(client, userdata, msg): topic=msg.topic m_decode=str(msg.payload.decode("utf-8","ignore")) print("data Received type",type(m_decode)) print("data Received",m_decode) print("Converting from Json to Object") m_in=json.loads(m_decode) #decode json data print(type(m_in)) print("broker 2 address = ",m_in["broker2"]) Sử dụng dòng lệnh PythonKhi làm việc để giải mã các chuỗi JSON phức tạp, tôi thấy hữu ích khi dán chuỗi vào dòng lệnh Python và sử dụng nó để giải mã chuỗi. Các bức ảnh màn hình sau đây minh họa quá trình này. Danh sách Python cho JSON
|