2024-09-24 16:30:20 发布
网友
我想创建一个非常简单的API,只有一个端点。 我想向API发送一个json,如: {“提供者”:com.facebook.orca网站", “code”:“1”, “color”:“#fffffff” }在
然后,我想使用python库来控制我房间中的设备(pythonyelelight)。我想使用一个认证令牌或用户名/密码认证。在
我在Django-Rest框架上发现,对于我所需要的(即接受帖子并返回“成功”或“失败”消息)来说太复杂了。在
谢谢你!在
您可以创建一个方法装饰器来实现基本身份验证。使用这个修饰符包装所有的django视图。在
def token_required(function): def wrap(request, *args, **kwargs): auth_token = request.META.get('HTTP_AUTHORIZATION_TOKEN') if auth_token: try: token = Tokens.objects.get(token=auth_token) user = token.user except Tokens.DoesNotExist: user=None else: r = { 'status': -1, 'message': 'Please provide a valid token.' } return HttpResponse(json.dumps(r), content_type="application/json") if user: request.user = user return function(request, *args, **kwargs) else: r = { 'status': -2, 'message': 'User not Authorised, Please login' } return HttpResponse(json.dumps(r), content_type="application/json") return wrap
现在,所有请求都必须包含一个头,如下所示,指向由这个装饰器包装的视图,以检测视图内部的用户。在
AUTHORIZATION-TOKEN:some_TOKEN_值
您的代币模型如下所示。在
装饰工使用:
@csrf_exempt @token_required def your_view(request): pass
我想这应该能帮到你。在
您可以创建一个方法装饰器来实现基本身份验证。使用这个修饰符包装所有的django视图。在
现在,所有请求都必须包含一个头,如下所示,指向由这个装饰器包装的视图,以检测视图内部的用户。在
AUTHORIZATION-TOKEN:some_TOKEN_值
您的代币模型如下所示。在
^{pr2}$装饰工使用:
我想这应该能帮到你。在
相关问题 更多 >
编程相关推荐