糟糕的twitter认证
django-le-twitter的Python项目详细描述
糟糕的twitter认证。
django le twitter几乎不提供任何东西让用户登录 twitter:两个基于类的视图。
django le twitter基于django>;=1.3和Tweepy。
这个概念很简单:当用户使用twitter成功登录时(即 你得到一个有效的oauth令牌),django le twitter执行一个方法,you 定义。没有创建模型实例,没有使用contrib.auth登录,没有 没有什么。你自己决定。
安装
pip install django-le-twitter
没有要添加到已安装的应用程序中的内容。它只需要在你的 python路径。你需要将你的twitter应用凭据添加到你的django 设置:
CONSUMER_KEY = 'your key' CONSUMER_SECRET = 'your secret'
用法
将django le twitter提供的两个视图子类化到一个应用程序中 意见。事实上,其中一个并不需要严格的子类。
# app/views.py from django.http import HttpResponse from le_twitter import views authorize = views.Authorize.as_view() class Return(views.Return): def handle_error(self, error_msg, exception=None): return HttpResponse(error_msg) def handle_success(self, auth): # Now it's up to you! return HttpResponse('It worked!') return_ = Return.as_view()
handle_success()给您一个tweepy.OAuth对象,其中包含用户的 OAuth凭据。此时您可以:
- 使用Tweepy API获取信息
- 创建auth.user实例并将其链接到自定义Twitter配置文件
handle_success()只需要返回一个HttpResponse。
之后,只需在应用程序urlconf中挂接自定义视图即可:
# app/urls.py from django.conf.urls.defaults import patterns, url from app.views import authorize, return_ urlpatterns = patterns('' url(r'^oauth/authorize/$', authorize, name='oauth_authorize'), url(r'^oauth/return/$', return_, name='oauth_return'), )