2016-12-28 2 views
0

Привет, У меня возникли проблемы с созданием скрипта HTTP POST-запросов здесь, на python. Вот описание цели, которую я должен достичь, но я понятия не имею, с чего начать. Описание:HTTP POST-запросы к URL-адресу с строкой JSON в python

Описание

первый, построить JSON строку, как показано ниже:

{ 
    "github_url": "https://gist.github.com/YOUR_ACCOUNT/GIST_ID", 
    "contact_email": "EMAIL" 
} 

Затем сделать запрос HTTP POST к URL http://WEBSITE, который содержит строку JSON в качестве органа часть.

Content-Type: of the request must be "application/json". 

The URL is protected by HTTP Basic Authentication, which is explained on Chapter 2 of RFC2617, so you have to provide an Authorization: header field in your POST request 

For the "userid" of HTTP Basic Authentication, use the same email address you put in the JSON string. 

Для "пароль", обеспечить на основе времени 10-значный одноразовый пароль, соответствующую RFC6238 TOTP. Вы должны прочитать RFC6238 (и ошибки тоже!) И получить правильный один раз пароль самостоятельно. «Шаг времени X» TOTP составляет 30 секунд. «T0» равно 0.

Используйте функцию HMAC-SHA-512 для функции хэша, а не по умолчанию HMAC-SHA-1.

Общий секрет токена - это идентификатор пользователя, за которым следует строковое значение ASCII «CATE399» (не включая двойные кавычки).

1. For example, if the userid is "[email protected]", the token shared secret is "[email protected]". 

2. For example, if the userid is "[email protected]", the token shared secret is "[email protected]" 

Если запрос POST успешно, сервер возвращает HTTP код состояния 200.

Может кто-нибудь, пожалуйста, сделать скрипт запроса HTTP POST для меня?

+0

Никто не напишет вам код. Вы должны сделать это самостоятельно. Вы можете попросить исправить некоторые проблемы, с которыми вы столкнулись в своем коде, но не запрашивать полный скрипт. Возможно, вам придется проверить этот http://stackoverflow.com/help/mcve, прежде чем задавать вопрос – Andersson

ответ

0

Есть много питона ЛИЭС для TOTP, вот пример https://github.com/pyotp/pyotp

в этом случае ваш код будет выглядеть следующим образом:
импорт pyotp
TOTP = pyotp.TOTP ("CATE399")
пароль = totp.now()

 Смежные вопросы

  • Нет связанных вопросов^_^