一种灵活的用于firebase认证的django-rest框架认证后端

drf-firebase-authentication的Python项目详细描述


django rest framework firebase身份验证

这个包为django rest框架提供了一个基本的firebase身份验证后端类。两个关键方法没有实现更大的灵活性。让我们keep it simple, stupid

要求

安装

pip install drf-firebase-authentication

用法

1.子类BaseFirebaseAuthentication并实现其模板方法:

通过相应地实现.get_django_user()方法,自己决定如何将firebase用户与本地django用户相关联。

把你的代码放入一个authentication.py文件中,这个文件位于一个专门用于你的项目rest api的应用程序中。

fromdrf_firebase.authenticationimportBaseFirebaseAuthenticationfromfirebase_adminimportcredentials,initialize_appfromdjango.contrib.authimportget_user_modelfirebase_creds=credentials.Certificate('path/to/firebase/credentials.json')firebase_app=initialize_app(firebase_creds)classFirebaseAuthentication(BaseFirebaseAuthentication):"""	Example implementation of a DRF Firebase Authentication backend class	"""defget_firebase_app(self):returnfirebase_appdefget_django_user(self,firebase_user_record):returnget_user_model().objects.get_or_create(username=firebase_user_record.uid,)[0]

2.将刚刚创建的firebase身份验证后端添加到您的settings.py

YOUR_RESTAPI_APP替换为放入authentication.py文件的应用程序。

REST_FRAMEWORK={'DEFAULT_AUTHENTICATION_CLASSES':('rest_framework.authentication.SessionAuthentication',# default'rest_framework.authentication.BasicAuthentication',# default'YOUR_RESTAPI_APP.authentication.FirebaseAuthentication',),}

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

推荐PyPI第三方库


热门话题
java Spring数据JPA+Hibernate在不首先找到父实体的情况下保存子实体   php Java:如何从CLI接收命令   spring为java中的导出数据创建访问文件   java在Windows 8.1上安装Play Framework   java Spring启动白标签错误页面(类型=未找到,状态=404)   java如何在单击时从数组中绘制?   java fn:substringAfter()上次出现   java在IFR语句中使用方法返回   java onPause()或onStop()的名称   对关联对象的关联对象具有条件的java HQL查询   java只打印一次总值,无需迭代   java如何使用抽象Uri buildOn()方法?   如何在Java中执行sudo命令并获得错误输出?   java反射:避免对getConstructor(类<?>…)的未经检查的警告调用作为原始类型类的成员   Java:如何从类中创建的对象调用类方法?   java如何在电子邮件中嵌入图像?   java如何在Android上启用详细GC?   java什么是串行版本id?