In yêu cầu json python
Trong bài viết này, tôi sẽ cho bạn biết cách đăng JSON từ máy khách lên máy chủ bằng thư viện 2. Ngoài ra, nếu bạn đang gặp phải “lỗi 400 yêu cầu không hợp lệ” trong khi đăng JSON lên máy chủ, bài viết này sẽ cố gắng giải quyết vấn đề đó Show
Đọc thêm
Các bước để xây dựng một yêu cầu POST JSONTạo một đối tượng URL. Hãy tạo một đối tượng URL. Chúng tôi cần một chuỗi URI đích chấp nhận dữ liệu JSON thông qua phương thức HTTP POST. Trong ví dụ này, tôi đang sử dụng httpbin. dịch vụ org để đăng dữ liệu JSON. httpbin. org là một dịch vụ web cho phép chúng tôi kiểm tra yêu cầu HTTP. Bạn có thể sử dụng nó để kiểm tra và kiểm tra yêu cầu POST của mình. httpbin. org phản hồi với dữ liệu về yêu cầu của bạn Vì vậy, URL của tôi là. “https. //httpbin. tổ chức/bài đăng“ Đặt phương thức yêu cầu. Như tên gợi ý, chúng ta cần sử dụng một phương thức post của một request module
Chỉ định dữ liệu POST. Theo đặc tả HTTP cho yêu cầu POST, chúng tôi chuyển dữ liệu qua nội dung thư. Khi sử dụng các yêu cầu, bạn sẽ chuyển tải trọng tới tham số dữ liệu của chức năng tương ứng. Dữ liệu có thể là bất kỳ thứ gì bao gồm JSON, từ điển, danh sách các bộ dữ liệu, byte hoặc đối tượng giống như tệp. Trong ví dụ này, tôi đang gửi dữ liệu JSON sau {'id': 1, 'name': 'Jessa Duggar'} Nếu bạn có dữ liệu ở dạng từ điển hoặc bất kỳ đối tượng Python nào, bạn có thể chuyển đổi nó thành JSON như thế này
Sử dụng tham số 3. Mô-đun yêu cầu cung cấp tham số 3 mà chúng ta có thể sử dụng để chỉ định dữ liệu JSON trong phương thức POST. tôi. e. , Để gửi dữ liệu JSON, chúng ta cũng có thể sử dụng tham số 3 của phương thức {'id': 1, 'name': 'Jessa Duggar'}2 Ví dụ
Tại sao đặt nó thành json? . Bây giờ, hãy xem ví dụ Cách tiếp cận 1. Sử dụng tham số import json sampleDict = { "id": 1, "name":"Jessa" } jsonData = json.dumps(sampleDict)3
đầu ra Status code: 200 Printing Entire Post Request {'args': {}, 'data': '{"id": 1, "name": "Jessa"}', 'files': {}, 'form': {}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Content-Length': '26', 'Content-Type': 'application/json', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.21.0'}, ' json': {'id': 1, 'name': 'Jessa'}, 'origin': 'xxx.xx.xx.xx, xxx.xx.xx.xx', 'url': 'https://httpbin.org/post'} Ghi chú. Dịch vụ này trả về toàn bộ yêu cầu của bạn dưới dạng phản hồi để giúp bạn biết chi tiết về yêu cầu của mình Cách tiếp cận 2. Bằng cách đặt thông tin tiêu đềNgoài ra, chúng tôi có thể đặt loại nội dung của yêu cầu. Trong ví dụ này, chúng tôi đang chuyển JSON, vì vậy loại nội dung của yêu cầu là {'id': 1, 'name': 'Jessa Duggar'}4 Bằng cách chỉ định các tiêu đề yêu cầu chính xác để mô-đun yêu cầu có thể tuần tự hóa dữ liệu của bạn thành định dạng tiêu đề Kiểu nội dung chính xác. Trong cái này có thể chúng ta không cần sử dụng tham số 3. Điều này hữu ích cho một phiên bản cũ hơn. Bây giờ hãy xem ví dụđầu ra Status code: 200 Printing Post JSON data id=1&name=Jessa application/json Kiểm tra yêu cầu POST JSON của bạn bằng cách sử dụng người đưa thư trước khi thực hiệnPhương pháp hay nhất luôn là kiểm tra yêu cầu của bạn cùng với nội dung thư của nó bằng cách sử dụng người đưa thư để xác minh dữ liệu JSON và yêu cầu ở định dạng bắt buộc. Hãy xem cách kiểm tra yêu cầu POST bằng người đưa thư Trong bài viết này, chúng ta sẽ tìm hiểu cách phân tích cú pháp phản hồi JSON bằng thư viện yêu cầu. Ví dụ: chúng tôi đang sử dụng thư viện 2 để gửi lệnh gọi RESTful GET tới máy chủ và đổi lại, chúng tôi nhận được phản hồi ở định dạng JSON, hãy xem cách phân tích cú pháp dữ liệu JSON này bằng PythonChúng tôi sẽ phân tích phản hồi JSON thành Từ điển Python để bạn có thể truy cập dữ liệu JSON bằng các cặp khóa-giá trị. Ngoài ra, bạn có thể prettyPrint JSON ở định dạng có thể đọc được Đọc thêm
Phản hồi của yêu cầu GET chứa thông tin mà chúng tôi gọi là tải trọng. Chúng tôi có thể tìm thấy thông tin này trong nội dung thư. Sử dụng các thuộc tính và phương thức của 9 để xem tải trọng ở các định dạng khác nhauChúng tôi có thể truy cập dữ liệu tải trọng bằng ba phương thức sau của mô-đun yêu cầu
Nội dung phản hồi JSONMô-đun yêu cầu cung cấp bộ giải mã JSON dựng sẵn, chúng ta có thể sử dụng nó khi xử lý dữ liệu JSON. Chỉ cần thực thi {'id': 1, 'name': 'Jessa Duggar'}02, thế là xong. {'id': 1, 'name': 'Jessa Duggar'}02 trả về phản hồi JSON ở định dạng từ điển Python để chúng tôi có thể truy cập JSON bằng các cặp khóa-giá trị Bạn có thể gặp lỗi 204 trong trường hợp giải mã JSON không thành công. {'id': 1, 'name': 'Jessa Duggar'}02 đưa ra một ngoại lệ trong trường hợp sau
Bạn phải kiểm tra {'id': 1, 'name': 'Jessa Duggar'}06 hoặc {'id': 1, 'name': 'Jessa Duggar'}07 trước khi phân tích cú pháp JSON vì lệnh gọi thành công tới {'id': 1, 'name': 'Jessa Duggar'}02 không biểu thị sự thành công của yêu cầu Trong trường hợp xảy ra lỗi HTTP 500, một số máy chủ có thể trả về đối tượng JSON trong phản hồi không thành công (e. g. , chi tiết lỗi với HTTP 500). Vì vậy, bạn nên thực hiện ________ 102 sau khi kiểm tra ________ 106 hoặc kiểm tra ______ 107 Hãy xem ví dụ về cách sử dụng phản hồi. json() và phân tích nội dung JSON Trong ví dụ này, tôi đang sử dụng httpbin. org để thực hiện lệnh gọi GET. httpbin. org là một dịch vụ web cho phép kiểm tra các yêu cầu và phản hồi bằng dữ liệu về yêu cầu đó. Bạn có thể sử dụng dịch vụ này để kiểm tra mã của mình Bạn có thể in JSON bằng Python không?Chúng ta có thể sử dụng mô-đun json của Python để in đẹp dữ liệu JSON . Mô-đun json được khuyến nghị để hoạt động với các tệp JSON. Chúng ta có thể sử dụng phương thức dumps() để lấy chuỗi JSON được định dạng đẹp.
JSON () trả về Python là gì?json() trả về một đối tượng JSON của kết quả (nếu kết quả được viết ở định dạng JSON, nếu không, nó sẽ phát sinh lỗi). Các yêu cầu Python thường được sử dụng để tìm nạp nội dung từ một URI tài nguyên cụ thể.
JSON đẹp là gìJSON Pretty, còn được gọi là 'JSON Pretty Print', giúp làm đẹp dữ liệu JSON và in dữ liệu đó . 'Pretty' làm đẹp nội dung JSON và 'Print' in nội dung JSON đã làm đẹp. |