我需要使用邮递员测试REST API。 API是使用Django REST Framework构建的。只有登录用户才能访问API。我无法找到如何使用邮递员发送登录凭据。提前谢谢。
class ApiMemberGroupNameList(views.APIView):
permission_classes = (
permissions.IsAuthenticated,
RequiredOrgPermission,
RequiredOrgStaffMemberPermission)
def get(self, request, **kwargs):
pk = kwargs.get('pk')
hash = kwargs.get('hash')
member_obj = get_object_or_404(Member.objects.filter(org__hash=hash, pk=pk))
return Response(GroupListSerializer(member_obj.groups.all(), many=True).data)
答案 0 :(得分:3)
您可以在POSTMAN中使用Basic Auth
。请参阅此屏幕截图:
您可以在POSTMAN控制台中更改HTTP Methods
,URLs
,Data Payload
(在Body
标签下)等
<强> UPDATE-1 强>
在您发表评论后,我试图重新创建问题。我做的是:
创建了一个视图
from rest_framework.views import APIView
from rest_framework.permissions import IsAuthenticated
from rest_framework.response import Response
class MySampleView(APIView):
permission_classes = (IsAuthenticated,)
def get(self, request):
return Response(data={"status": True})
已添加到urls.py
urlpatterns = [
url(r'^mysampleview/$', MySampleView.as_view())
]
我的POSTMAN回复如下:
我的结论
您可能输入错误的凭据或其他内容。我建议您打开一个新的POSTMAN选项卡并重复该过程,同时尝试使用已在POSTMAN中使用的相同凭据登录Django管理员
答案 1 :(得分:2)
如果要使用基本身份验证来测试Django REST API,则必须在Django REST Framework设置中允许它:
'DEFAULT_AUTHENTICATION_CLASSES': [
'rest_framework.authentication.BasicAuthentication',
...