简单的django应用程序,允许用户登录twitter

simple-django-twitter-auth的Python项目详细描述


#简单的django twitter身份验证

简单的django twitter身份验证是向django项目添加"使用twitter登录"功能的一种显式、简单的方法。我们的目标是将控制权掌握在您的手中,并允许定制和实现,而无需翻阅一页页的文档。

##安装

  1. pip安装简单的django twitter auth

  2. < DL>
    转到[https://apps.twitter.com](https://apps.twitter.com)并注册尚未注册的应用程序 > UL>
  3. 确保在"设置"页面中启用了"允许此应用程序使用Twitter登录"选项!
  4. 从您的Twitter应用程序仪表板中获取API键和API机密

  5. settings.py中定义以下设置 < Buff行情>

    推特应用程序密钥='myappkey'twitter\u app\u secret='我的appsecret'

    建议您使用环境变量,而不是在设置文件中定义机密凭据

  6. settings.py中定义主机 < Buff行情>

    主机='https://3efed1b4.ngrok.com'

    不要包含后面的反斜杠

    好:https://3efed1b4.ngrok.com错误:https://3efed1b4.ngrok.com/

  7. settings.py中的已安装的应用程序中添加'django\u twitter\u auth'。

  8. 在根目录顶部添加以下行urls.py

    < Buff行情>

    url(r'^twitter/',include('django_twitter auth.url',namespace='django_twitter auth'),

  9. 运行migrate安装简单django twitter auth附带的twitter配置文件模型 < Buff行情>

    python manage.py迁移

  10. 就这样!您现在可以使用{%url'django_twitter auth:login'%}模板标记启动登录流。

##登录流程

    < DL>
    simple django twitter auth提供以下url/twitter/login/。首先,将用户指向此处。
    > UL>
  1. 您还可以使用{%url'django_twitter auth:login'%}模板标记
  2. 用户被重定向到twitter,在那里他们授权你的应用程序,授予它访问他们twitter个人资料的权限。
  3. < DL>
    授权应用程序后,Twitter会将用户重定向回您的网站。简单的django twitter auth然后执行以下操作之一:
    > UL>
  4. 创建一个新的twitter配置文件和用户
  5. 查找现有的twitter配置文件用户
  6. 查找现有的twitter配置文件用户,并更新twitter配置文件的oauth2令牌。(如果twitter用户取消了对您应用程序的访问,然后稍后重新授权,那么simple django twitter auth只需更新访问令牌即可。)
  7. 简单的django twitter auth手动登录用户,并将其重定向回开始流的页面。

##部件

####TwitterProfile

简单的django twitter auth提供了一个twitter配置文件模型。此模型具有以下属性:

twitterProfile.oauth_令牌

授权期间由twitter提供的oauth2令牌。可用于代表Twitter用户使用/发布其他数据。

twitterprofile.oauth_token_secret

授权期间Twitter提供的OAuth2令牌机密。可用于代表Twitter用户使用/发布其他数据。

twitterProfile.username

用户的Twitter用户名。不包括"@"。

Trong>twitterProfile.user

每当创建一个新的twitter配置文件时,也会创建一个用户,并与twitter配置文件建立一个onetoone关系。

用户的用户名属性设置为与twitterprofile.username相同的值

简单的django twitter auth使用django.contrib.auth.get_user_model()获取当前的用户模型。

可通过user.twitterprofile进行反向查找。

##定制

####twitter_new_user_url

定义要重定向到的新用户的位置。Eg:

< Buff行情>twitter\u new\u user\u url="/welcome/"

用户到达此处时已登录。

如果定义了此设置,那么在转发时,simple django twitter auth将向url参数附加一个redir_。这将包含用户从中启动登录流的url。例如,?重拨至=/welcome/

您可以捕获此参数,在完成twitter\u新用户url中定义的任何自定义逻辑之后,将用户重定向回其开始的位置。

####Twitter验证随机密码

默认值为true

当simple django twitter auth创建一个用户并将其绑定到twitter配置文件时,将为用户创建一个使用os.urandom()的随机base64编码的128位密码。这只是一种保护措施,这样就不会用空白密码创建用户。

如果需要,可以通过将twitter auth_random_password设置为false来关闭此功能。

##运行测试

可以通过调用manage.py test django_twitter auth手动运行测试

##即将推出

  • 提供额外定制的信号
  • 自述文件中的图片
  • 更好的例子
  • 即将推出更多…

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Android:在ListView上使用setOnItemClickListener   使用Netbeans 7.0连接到SQL Server的java正在挂起   java Spring3依赖项注入不适用于mule   java Flink SQL结果字段与LocalDateTime上请求的类型错误不匹配   java找不到文件的结尾   考虑到NamingStrategy,java有没有办法将字符串转换为JsonNode?   使用Netbeans/ant部署java(命令行)应用程序   java如何修复Spring引导多部分上载中的“所需请求部分不存在”   java在应用程序启动时通过引用获取映射未知目标实体属性异常   java形状旋转问题Java2d   Weblogic服务器上的java ExecuteAndWaitInterceptor问题   JavaSpringBoot:project将图像保存在错误的路径中,并且在使用IDEIntellji打开时不显示图像   类向java接口添加方法   Swing组件上的Java 7泛型   sql server如何从java获取用户名。sql。联系   java如何检查该行是否与正则表达式(regex)冲突?   java如何在spring引导安全中为计数失败登录设置验证登录为false   图像如何在Java中使PNG的白色透明?