我正在尝试使用django-rest-framework在我的Django REST API中实现基于Auth0 JWT的身份验证.我知道有一个可用于REST框架的JWT库,我尝试使用它,因为官方的Auth0 twitter帐户提到它应该与auth0 + Django一起使用.
编辑:我正在使用官方auth0 python api指南为此代码.它是为烧瓶而写的,但我想我可以将它移植到Django,因为它们的工作方式类似.
现在,这并没有解决我想要的问题,因此我正在尝试login_required为视图编写自己的decorater.我在这里的代码如下:
def auth_required(f):
def wrap(request, *args, **kwargs):
auth = request.META.get('HTTP_AUTHORIZATION', None)
if not auth:
return authenticate({'code': 'authorization_header_missing', 'description': 'Authorization header is expected'})
parts = auth.split()
if parts[0].lower() != 'bearer':
return authenticate({'code': 'invalid_header', 'description': 'Authorization header must start with Bearer'})
elif len(parts) == 1:
return authenticate({'code': 'invalid_header', 'description': 'Token not found'})
elif len(parts) > 2:
return authenticate({'code': 'invalid_header', 'description': 'Authorization header must be Bearer + \s …Run Code Online (Sandbox Code Playgroud) 我处于一个非常特殊的情况,我想覆盖默认的ASP.NET Core ControllerFactory.我想这样做是因为我想完全控制我处理每个请求的控制器类型.
场景是:
例如:
category.website.com 叫做category并将使用泛型HomeController<T>,使用DI注入类别,因此类型是HomeController<Category>HomeController<Category>将使用类型一些通用的方法Category方法来呈现网页.如果我被引导相信此链接,DefaultControllerFactory则在应用程序启动时注册类型的工厂.这似乎不可以覆盖.
知道怎么回事吗?对我们来说最合乎逻辑的选择是使用旧的ASP.NET MVC版本,它允许您设置自己的ControllerFactory,但我们失去了能够SpaServices用于预呈现我们的Angular应用程序的功能.