Menu
CoddyTech

Phương thức requests để gửi dữ liệu

Bài học 6 trên 10 trong khóa học API trong Python của Coddy.

Cũng như khi lấy dữ liệu bằng các yêu cầu GET, bạn có thể gửi dữ liệu đến máy chủ API bằng phương thức .post().

Phương thức post() cần một URL và thường nhận tiêu đề cùng dữ liệu làm đối số. Nguyên tắc là dữ liệu của bạn sẽ được gửi đến điểm cuối API, rồi máy chủ sẽ xử lý dữ liệu đó.

Cấu trúc code post() như sau:

import requests
response = requests.post(
	"https://api.example.com/endpoint",
	headers={
		"Content-Type": "application/json"
	},
	json={
		"key1": "value1",
		"key2": "value2"
	}
)

Tiêu đề và dữ liệu được truyền dưới dạng từ điển gồm các cặp khóa-giá trị.

Lưu ý:

  • Tiêu đề thường chứa siêu dữ liệu về yêu cầu của bạn, chẳng hạn như kiểu nội dung
  • Tham số json tự động chuyển từ điển Python của bạn sang định dạng JSON
  • Một số API yêu cầu xác thực bằng khóa API trong tiêu đề
challenge icon

Thử thách

Trung bình

Gửi yêu cầu POST để tạo người dùng mới bằng API JSONPlaceholder.

Hướng dẫn:

Gửi yêu cầu POST đến: https://jsonplaceholder.typicode.com/users

Thêm tiêu đề sau:

{"Content-Type": "application/json"}

Gửi dữ liệu sau bằng tham số json:

{
    "name": "James Shelby",
    "email": "jamesshelbys1987@example.com",
    "username": "jshelby1987"
}

Lưu đối tượng requests.post() vào một biến có tên response

In ra cả response.status_code và response.json() để xem kết quả

Đầu ra dự kiến: Bạn sẽ nhận được mã trạng thái 201 (Created) và thấy dữ liệu người dùng của mình được trả về cùng với một ID đã cấp!

Tự làm thử

import requests

response = requests.post(
    # Your code here
)

print("Status Code:", response.status_code)
print("Response:", response.json())

Tất cả bài học trong API trong Python

Tự luyện tập: Trình biên dịch Python online