2017-01-14 12 views
0

Я пытаюсь (законно и с продвижением с сайта) заходить на бирже обмена matchbook.com через их api.вход в API MATCHBOOK с запросами Python

В документации говорится:

Для входа в систему: https://www.matchbook.com/bpapi/rest/security/session

и

Пример запроса POST/безопасность/сеанс { "имя пользователя": "j_henry", "пароль": " ****** " }

Пример ответа { «session-token»: «1418_1234567890», «user-id»: 1418, «account»: {// То же, что и ответ GET/account API. ... }}

Я использую запросы и иметь следующий код:

payload = {"username": "********", "password": "************"} 
r = requests.post('https://www.matchbook.com/edge/rest/security/session', data=payload) 
print (r.status_code) 

я получаю код ошибки 415? Я должен получать неправильный ответ?

Я посмотрел на очень похожие посты здесь, и я собираюсь спросить команду спичечной книги, но прежде чем у меня возникнут какие-либо идеи?

ответ

1

Вы, возможно, придется указать Content-Type, попробуйте добавить заголовок, чтобы сообщить серверу, что это JSON отформатированный:

payload = {"username": "********", "password": "************"} 
headers = {"Content-Type": "application/json;"} 
r = requests.post('https://www.matchbook.com/edge/rest/security/session', data=payload, headers=headers) 
print (r.status_code) 
+0

, на самом деле это взяло оба ваших предложения Shane и danyamachine, чтобы сделать эту работу - но теперь она сладко поет и возвращает 200: D – Davtho1983

1

Из вашего кода не видно, что вы JSON-кодируете свою полезную нагрузку. Конечная точка, скорее всего, ожидает JSON. Попробуйте это:
payload = '{"username": "********", "password": "************"}'

+0

спасибо за вашу помощь - отправляющая ThankYou кузен он фактически взял и ваше и решение Шейна, чтобы сделать эту работу – Davtho1983