/ / काम करने के लिए django आराम ढांचे jwt प्रमाणीकरण प्राप्त करना [django आराम, कोणीय 5] - django, प्रमाणीकरण, django-rest-framework, http-headers, django-rest-framework-jwt

काम करने के लिए django आराम ढांचे jwt प्रमाणीकरण प्राप्त करना [django आराम, कोणीय 5] - django, प्रमाणीकरण, django-rest-framework, http-headers, django-rest-framework-jwt

तो मैंने djanogo आराम ढांचे जेडब्ल्यूटी स्थापित किया हैऔर सेटिंग्स और authetication कक्षाओं सेट करें। इस गाइड के अनुसार। मैं सेटिंग्स को छोड़ दूंगा क्योंकि वे सही हैं, और यह वह जगह नहीं है जहां समस्या निहित है। यह बहुत अधिक कोड पोस्ट नहीं करना है

https://getblimp.github.io/django-rest-framework-jwt/

इसके बाद मैं अपने सर्वर पर फ्रंट एंड से प्राधिकरण दृश्य पर कॉल करता हूं

 let token = "hardcoded token just to get the service working";
if(token != null){
this.authservice.authorizetoken(token)
.subscribe(
(req: any)=>{
console.log(req);
}
);

// grab the permissions a user has and who they are by token
authorizetoken(token){
return this.http.get(userauthorization, {
headers: new HttpHeaders().set("Authorization", "JWT" + token )
});
}

तो यहां मेरे django में दृश्य कोड है:

class UserAuthorization(APIView):
authentication_classes = (JSONWebTokenAuthentication,)
def get(self, request, *args, **kwargs):
print(request.user)
return Response({})

लेकिन मैं गुमनाम हो रहा हूं उपयोगकर्ता वापस आ गया। क्या यह उपयोगकर्ता ऑब्जेक्ट नहीं होना चाहिए क्योंकि मैं हेडर में टोकन पास कर रहा हूं?

मैं नहीं जानता कि मैं क्या गलत कर रहा हूं।

उत्तर:

जवाब के लिए 0 № 1

दस्तावेज़ीकरण के अनुसार हेडर प्रारूप में होना चाहिए Authorization: JWT <your_token>। जब आप अपने अंदर हेडर में टोकन सेट कर रहे हों authorizetoken फ़ंक्शन, आप के बीच एक सफेद-स्थान खो रहे हैं "JWT"+ token। उपयोगकर्ता को प्रमाणित करने के लिए यह समस्या हो सकती है। क्या आपने पोस्टमैन के साथ एंडपॉइंट की कोशिश की है?