gpt4 book ai didi

python - Django Rest Framework 身份验证被拒绝

转载 作者:太空狗 更新时间:2023-10-30 00:06:50 25 4
gpt4 key购买 nike

我已经使用 PSA 在 Django 上验证了我的用户,并在用户模型中注册了用户,甚至 token 模型也注册了用户和 token 。

但是当我发送这个请求时:

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

我明白了

{"detail":"You do not have permission to perform this action."}

如果我发送这个:

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

我明白了

{"detail":"Invalid username/password"}

这些是我的设置文件中的相关片段:

'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',
)

有人遇到过这种情况吗?有什么解决办法?

最佳答案

我的印象是这个元组表示用户已通过身份验证或管理员。

'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 

虽然我不知道为什么会这样。这几乎是侥幸修复。如果有人知道为什么这样工作,请告诉我

关于python - Django Rest Framework 身份验证被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28582730/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com