2017-09-23 3 views
0

현재 토큰을 수동으로 생성하고 있지만 jwt 토큰을 사용하고 싶습니다. 공식 문서와 다른 참조를 따르지 만 여전히 문제를 파악할 수 없습니다.DRF-jwt 토큰을 얻는 중

serializers.py 토큰 인증 후 수동으로 생성됩니다.

class UserLoginSerializer(serializers.ModelSerializer): 
    token = serializers.CharField(allow_blank=True, read_only=True) 

    class Meta: 
     model = User 
     fields = [ 
      'username', 
      'password', 
      'token', 
     ] 
     extra_kwargs = {"password": 
          {"write_only": True} 
         } 

    def validate(self, data): 
     username = data.get('username', None) 
     password = data.get('password', None) 

     try: 
      usern = Account.objects.get(username=username) 
     except ObjectDoesNotExist: 
      raise serializers.ValidationError("User does not exists") 

     if usern.check_password(password): 
      data["token"] = "asdasdasdasd" 
     else: 
      raise serializers.ValidationError("password invalid") 

     return data 

내가 url(r'^api-token-auth/', obtain_jwt_token)를 사용했다,하지만 난 jwt 토큰을 생성하는 방법을 알아낼 수 없습니까 'rest_framework_jwt.authentication.JSONWebTokenAuthentication',

포함 한 설정에서

from django.conf.urls import url 
from .views import AuthRegister, AuthLogin 
from rest_framework_jwt.views import obtain_jwt_token 

urlpatterns = [ 
    url(r'^register/$', AuthRegister.as_view()), 
    url(r'^login/$', AuthLogin.as_view()), 
    url(r'^api-token-auth/', obtain_jwt_token), 
] 

urls.py. 누군가 나를 도와주세요!

답변

0

/api-token-auth/의 API에 대한 HTTP POST 호출을 만들어야합니다. 이 호출에서 본문에는 usernamepassword의 키가 포함됩니다.

사용 예 :

curl -X POST -d username=abcd -d password=1234 http://ip:port/api-token-auth/ 
관련 문제