0 Djके लिए Django-oauth-toolkit का उपयोग करके Django-rest-framework के साथ एक एपीआई एंडपॉइंट का परीक्षण कैसे करें मेरे पास एक एपीआई एंडपॉइंट को परिभाषित करने के लिए एक Django-rest-framework Viewset/राउटर है। viewset इस तरह के रूप में परिभाषित किया जाता है:प्रमाणीकरण
class DocumentViewSet(viewsets.ModelViewSet):
permission_classes = [permissions.IsAuthenticated, TokenHasReadWriteScope]
model = Document
और रूटर के रूप में
router = DefaultRouter()
router.register(r'documents', viewsets.DocumentViewSet)
हो रही द्वारा कर्ल ठीक के माध्यम से/url पैटर्न के साथ परिभाषित किया गया है url(r'^api/', include(router.urls))
मैं ब्राउज़र में इस endpoint हिट कर सकते हैं सही पहुंच टोकन और प्राधिकरण के लिए इसका उपयोग कर रहा है। हालांकि, यह स्पष्ट नहीं है कि इस एंडपॉइंट के खिलाफ परीक्षण कैसे लिखें।
यहाँ मैं क्या कोशिश की है है:
class DocumentAPITests(APITestCase):
def test_get_all_documents(self):
user = User.objects.create_user('test', '[email protected]', 'test')
client = APIClient()
client.credentials(username="test", password="test")
response = client.get("/api/documents/")
self.assertEqual(response.status_code, 200)
यह client.get()
कॉल से एक HTTP 401 प्रतिक्रिया के साथ विफल रहता है। Oauth2 प्रमाणीकरण के लिए django-oauth-toolkit का उपयोग करके डीआरएफ में एपीआई एंडपॉइंट का परीक्षण करने का सही तरीका क्या है?
यह टिकट है। मैं एक्सेस टोकन के निर्माण को याद कर रहा था + यह अनुरोध में टोकन को इंजेक्ट करने का तरीका स्पष्ट नहीं था। धन्यवाद! – Jim
यह वही था जो मैं ढूंढ रहा था। आपका बहुत बहुत धन्यवाद! – DanXPrado