I keep getting this error when accessing request.user from my viewSet class. TypeError: int() argument must be a string, a bytes-like object or a number, not 'AnonymousUser'
Viewset
class FriendRequestViewSet(viewsets.ModelViewSet):
"""
API endpoint that allows users to be viewed or edited.
"""
def list(self, request):
queryset = FriendshipRequest.objects.filter(to_user=request.user)
print(queryset)
serializer = FriendRequestSerializer(queryset, many=True)
return Response(serializer.data)
queryset = FriendshipRequest.objects.all()
serializer_class = FriendRequestSerializer
it works fine with postman I get authenticated user. but with my angularJs Application I get Internal error.
This is the service:
this.getFriendRequests = function () {
var token = $window.sessionStorage.getItem('token');
console.log('TOKEN IS => ' + token);
console.log('cookie is : ' + getCookie('csrftoken'));
$http.defaults.headers.post['X-CSRFTOKEN'] = getCookie('csrftoken');
return $http.get('http://127.0.0.1:8000/friendsrq/', {
headers: { 'Authorization': 'token: ' + token }
});
};
I use Token authentification
I think it's a small typo in your angular code.
Use capital letter T in header(That is, it should be Token
instead of token
)
headers: {'Authorization': 'Token: ' + token}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加