如何使用密钥验证连接的应用程序? Django,Python

时间:2016-01-22 15:28:03

标签: python django api django-rest-framework

我开发了一个Web服务,通​​过web-API应该通过预生成的密钥与第三方应用程序连接。 我的解决方案是使用@csrf_exempt,但这似乎是非常糟糕的解决方案。 如何通过密钥验证连接的应用程序?

1 个答案:

答案 0 :(得分:0)

您可以使用permissions

您需要将其添加到设置中:

REST_FRAMEWORK = {
    'DEFAULT_PERMISSION_CLASSES': (
        'app_name.path.MyPermissionClass',
    )
}

然后创建权限类。如上所述here

from rest_framework import permissions

class MyPermissionClass(permissions.BasePermission):

    def has_permission(self, request, view):
        if request.META.get('HTTP_SECRET_KEY', None) == 'your key':
            return True
        else:
            return False