Django - временно сохранить токен запроса для потока OAuth 1.0a

Для потока Twitter OAuth 1.0a требуется authenticated request token обменяться с access token в consumer or client сторона после user подтвердил подлинность

Проблема, с которой я сталкиваюсь, заключается в том, что генерация access token потребности authenticated request token, request token secret а также verifier но ответ от oauth/authentication API не имеет request token secret, Так как мне временно сохранить секретный токен запроса из oauth/request_token вызов API, чтобы я мог использовать его в oauth/access_token вызов API.

Я нашел некоторые решения из моих исследований, таких как Запуск сервера кэша (Memcached, Redis) или использование функции сессии django. Но все они кажутся излишними для этой задачи.

Я надеюсь найти более простое решение.

1 ответ

Я уверен, что вы уже давно поняли это, но только для будущих гулеров: я решил пойти по более низкому техническому маршруту и ​​создать класс токенов OAuth, который включает поля для извлеченного токена и токена доступа. Обычно я беру извлеченный токен, сохраняю его, затем вызываю его при доступе (как это происходит в другом представлении) и затем сохраняю токен доступа. Один раз (если) это успешно, чем я удаляю извлеченный токен.

Вероятно, есть более привлекательный способ сделать это, но если вы сообразительны с вашим соглашением об именах, вы можете легко сохранить их (например, добавить CharField для провайдера и просто сохранить извлеченный токен как twitter_fetched, а токен доступа как просто twitter),

Это дает дополнительное преимущество, позволяя вам создавать OAuth1 или OAuth1Session из сохраненного токена доступа.

Другие вопросы по тегам