2015-06-29 5 views
0

Я не могу заставить работать зависание для вызова API, но python отлично работает. Параметры в моих запросах на завивки верны. Это связано с сообщениями, в которых происходит что-то шуточное.Python Post Request работает, но не curl

запрос Мои Питон:

requests.post("https://example.com", data={"my_id":"2o3i234j", verify=False}).json(); 

Мой Curl ответ работает отлично, однако я получаю ответ от API говорят, что я не послал в значении для my_id.

Я использую это в качестве параметра:

curl -k -X POST -d "{'my_id':'2o3i234j'}" https://abcd.com 
+0

Вы пытаетесь использовать синтаксис словаря Python с опцией '-d', которая не имеет смысла. Обратитесь к странице 'curl (1)' man. –

+0

@JonathonReinhart Я в замешательстве. Это просто пары значений имени. Что означает эквивалент при отправке этого в curl? – KingKongFrog

+0

'{...}' - синтаксис словаря Python и не имеет смысла скручивать. [ответ mescalinum] (http://stackoverflow.com/a/31127158/119527) показывает правильный синтаксис. –

ответ

4

Если какой-либо из этих вариантов используется более чем один раз на одной и той же командной строке, части данных, указанные будут объединены вместе с разделяющим & -символ. Таким образом, использование '-d name = daniel -d skill = lousy' создало бы пост-кусок, который выглядит как 'name = daniel & skill = lousy'.

Формат, однако, является ключевым = значение.

curl -d "my_id=2o3i234j" https://abcd.com 
Смежные вопросы