django一次性链路发生器和处理器

ua2.otl的Python项目详细描述


用于创建ont时间链接的django工具

安装

为了与django集成,需要将ua2.otl添加到已安装的应用程序列表:

INSTALLED_APPS+=('ua2.otl')

并放入根url.py下一行:

url(r'^l/',include('ua2.otl.urls'))

警告:仅包含url.py compatibil,django>;=1.8。 对于1.8之前的django,需要使用以下解决方案:

fromua2.otl.viewsimportotl_viewurlpatterns=urlpatterns(.....url(r'^l/(?P<otp_key>\w+)/$',otl_view,name='one-time-link'),)

使用

您可以将onetimelink用于多个场景:

  • 重定向至使用django backresolve查看(使用支持回调)
  • 重定向到直接URL(带支持回调)
  • 使用视图重排响应

重定向

有两种方法可以将结果链接传递到onetimelink对象:

  • 用kwargs传递url解析点
  • 传递渲染链接
fromua2.otlimportOneTimeLinklink=OneTimeLink.create(resolve_name='django-url-name',resolve_kwargs={'value':1})link.save(expire=3600)

带有回调和授权的示例:

fromua2.otlimportOntTimeLinkdefauth_callback(request,user_email):user=get_object_or_404(User,email=user_email)login(request,user)@login_requireddefpassword_restore(request):....defsend_restore_passwortd(request):link=OneTimeLink.create(resolve_name='url-password-reset')link['user_email']=request.POST.get('user_email')link.save(callback=auth_callback,expire=3600,count=1)returnHttpResponse("http://127.0.0.1:8000%s"%link.url)

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

推荐PyPI第三方库


热门话题
java提高机器学习Rest服务性能   java反转字符的字符串顺序,并使用构造函数将其放入LinkedList   继承为什么Java不支持在方法签名中添加“throws”?   执行DDL alter table if exists任务时发生java错误。城市   java在eclipse中使用CREATETXT并打包在jar中   java AES256与3DES 256密钥检测   具有两个相同类型字段的java JPA实体   java Webapp日志记录设置被忽略   java KeyEventDispatcher可以在一个应用程序中工作,但不能在另一个应用程序中工作   带有Swing和OpenJDK的java PinchZoom   未涉及java AspectJ注释切入点(对于任何注释类型)   java如何在FuseBAI中获取日志文件详细信息   java在Linux上将wstring转换为jstring