Как протестировать Django REST API с помощью почтальона? - PullRequest
0 голосов
/ 06 июня 2018

Мне нужно протестировать 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)

1 Ответ

0 голосов
/ 06 июня 2018

Вы можете использовать Basic Auth в POSTMAN.См. Этот снимок экрана:

enter image description here

Вы можете изменить HTTP Methods, URLs, Data Payload (на вкладке Body) и т. Д. Вконсоль POSTMAN

UPDATE-1

После ваших комментариев я попытался воссоздать проблему. Я сделал следующее:

  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})
    
  2. Добавлено в urls.py

    urlpatterns = [
                  url(r'^mysampleview/$', MySampleView.as_view())
                  ]
    

И мой ответ POSTMAN приведен ниже:

Снимок экрана авторизации

Снимок экрана заголовка

Мой вывод

Вы можете ввести неправильные учетные данные, или что-то другое.Я бы посоветовал вам открыть новую вкладку POSTMAN и повторить процедуру, а также попытаться войти в систему администратора Django, используя те же учетные данные, которые уже используются в POSTMAN

...