2015-02-18 7 views
4

Я аутентифицировал своего пользователя в Django с использованием PSA и зарегистрировал пользователя в пользовательской модели, и даже модель маркера имеет зарегистрированный пользователь и зарегистрированный токен.Django Rest Framework Authentication denied

Но когда я отправить этот запрос:

curl -X POST -H "Authorization:Token 87e939184457ccc064485444a90e3ebf417xxxxx" http://192.168.x.x:8000/user-profiles/>error.html 

Я получаю

{ "деталь": "У вас нет разрешения на выполнение этого действия."}

И если я пришлю это:

curl -X POST --user "VedantDasSwain:87e939184457ccc064485444a90e3ebf417xxxxx" http://192.168.x.x:8000/user-profiles/>error.html 

я

{ "деталь": "Неверное имя пользователя/пароль"}

Эти соответствующие фрагменты из моего файла настроек:

'DEFAULT_PERMISSION_CLASSES': ('rest_framework.permissions.IsAuthenticated', 
     'rest_framework.permissions.IsAdminUser',), 
    'DEFAULT_AUTHENTICATION_CLASSES': (
     'rest_framework.authentication.BasicAuthentication', 
     'rest_framework.authentication.SessionAuthentication', 
     'rest_framework.authentication.TokenAuthentication', 
    ), 

И это частью Настройки PSA:

AUTHENTICATION_BACKENDS = (
    'social.backends.facebook.FacebookOAuth2', 

    'django.contrib.auth.backends.ModelBackend', 
) 

Кто-нибудь сталкивался с чем-либо из этого ort раньше? Каково решение этого?

ответ

2

У меня создалось впечатление, что этот кортеж означает, что либо пользователь аутентифицирован, либо администратор.

'DEFAULT_PERMISSION_CLASSES': ('rest_framework.permissions.IsAuthenticated', 
     'rest_framework.permissions.IsAdminUser',) 

Однако, я удалил «rest_framework.permissions.IsAdminUser» из кортежа, а затем он дал мне правильный результат на

curl -X POST -H "Authorization:Token 87e939184457ccc064485444a90e3ebf417xxxxx" http://192.168.x.x:8000/user-profiles/>error.html 

Я не знаю, почему это произошло, хотя. Это в значительной степени исправить случайность. Если кто-то знает, почему это сработало, пожалуйста, дайте мне знать

Смежные вопросы