Преобразование CURL-запроса в Python с использованием библиотеки запросов

1

Попросите запрос CURL:

curl -X POST "https://page.com/login" 
-H "accept: application/json" -H "Content-Type: application/json" 
-d "{ \"username\": \"admin\", \"password\": \"pass\"}"

В Python я предполагаю, что это должно выглядеть так:

import requests

headers = {
    'Accept': 'application/json',
    'Content-Type': 'application/json'
}

data = {'username': 'admin', 'password': 'pass'}

response = requests.post('https://page.com/login', headers=headers, data=data)
response

После этого это дает мне ошибку [502] для плохих шлюзов. Что я делаю неправильно с моим запросом python и как его следует изменить?

  • 1
    попробуйте вместо этого использовать requests.post(..., json=data)
  • 0
    хорошо, спасибо. Вы можете опубликовать ответ, который я приму :)
Теги:
python-requests
curl
http-headers
post

1 ответ

1
Лучший ответ

Попробуйте использовать:

requests.post(..., json=data)

Когда вы используете data= запросы отправят форму, закодированную, чтобы на самом деле положить json в тело, вы должны использовать json=

Ещё вопросы

Сообщество Overcoder
Наверх
Меню