2017-05-07 1 views
0

주제를 벗어 났지만이 문제를 조사하는 데 어려움이있을 수 있습니다. 장고 REST가 설치되어 있고 응답하기 전에 임의의 수의 지연을 시뮬레이트 할 수 있기를 원합니다. 합니다 (DRF 튜토리얼에서 기본적으로 그대로)Django REST의 응답 지연

내보기는 :

class SnippetList(generics.ListCreateAPIView): 
    queryset = Snippet.objects.all() 
    serializer_class = SnippetSerializer 


class SnippetDetail(generics.RetrieveUpdateDestroyAPIView): 
    queryset = Snippet.objects.all() 
    serializer_class = SnippetSerializer 

내가 3과 5 사이에 돌아갈 수 있도록하고 싶습니다는 성공적인 응답하기 전에 응답을하지 못했습니다. 어떤 조언을 크게 감사드립니다.

답변

2

보기의 방법을 dispatch 무시할 수 있습니다. 다음은 각 5 요청에 대한 평균 적절한 응답을 반환 : 당신이 정말 이전 n 번째의 요청에 따라보다 적절한 응답을 반환하고 싶지는 않을 경우

import random 
from django.http import Http404 

class SnippetList(generics.ListCreateAPIView): 
    # ... 

    def dispatch(self, request, *args, **kwargs): 
     if random.random() < 0.2: 
      return super(SnippetList, self).dispatch(request, *args, **kwargs) 
     raise Http404 # or any other custom behaviour 

을, 당신은 이후 요청의 수를 유지해야 어딘가에 마지막 올바른 응답. 어딘가에 세션이 될 수 있습니다 (카운팅이 사용자 당 기준 인 경우) 또는 데이터베이스 일 수 있습니다.

+0

이것은 내가 찾고있는 것입니다. 감사합니다! – Toby