Tôi đang cố gắng thực hiện một yêu cầu POST API bằng thư viện yêu cầu Python. Tôi đang chuyển qua một Authorization
tiêu đề nhưng khi tôi thử gỡ lỗi, tôi có thể thấy rằng tiêu đề đang bị loại bỏ. Tôi không biết chuyện gì đang xảy ra.
Đây là mã của tôi:
access_token = get_access_token()
bearer_token = base64.b64encode(bytes("'Bearer {}'".format(access_token)), 'utf-8')
headers = {'Content-Type': 'application/json', 'Authorization': bearer_token}
data = '{"FirstName" : "Jane", "LastName" : "Smith"}'
response = requests.post('https://myserver.com/endpoint', headers=headers, data=data)
Như bạn có thể thấy ở trên, tôi đặt thủ công Authorization
tiêu đề trong các đối số yêu cầu, nhưng nó thiếu các tiêu đề của yêu cầu thực tế :
{'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'User-Agent': 'python-requests/2.4.3 CPython/2.7.9 Linux/4.1.19-v7+'}
.
Một thông tin bổ sung là nếu tôi thay đổi yêu cầu POST thành yêu cầu GET, Authorization
tiêu đề sẽ chuyển qua bình thường!
Tại sao thư viện này sẽ bỏ tiêu đề cho các yêu cầu POST và làm cách nào để nó hoạt động?
Sử dụng v2.4.3 của các yêu cầu lib và Python 2.7.9