我正在学习使用this article作为参考的jwt身份验证。我对本文提到的代码有疑问。
因此有一个名为current_user
的视图:
@api_view(['GET'])
def current_user(request):
"""
Determine the current user by their token, and return their data
"""
serializer = UserSerializer(request.user)
return Response(serializer.data)
在App
的{{1}}函数的前端中被调用:
componentDidMount
我不了解的部分是:
constructor(props) {
super(props);
this.state = {
displayed_form: '',
logged_in: localStorage.getItem('token') ? true : false,
username: ''
};
}
componentDidMount() {
if (this.state.logged_in) {
fetch('http://localhost:8000/core/current_user/', {
headers: {
Authorization: `JWT ${localStorage.getItem('token')}`
}
})
.then(res => res.json())
.then(json => {
this.setState({ username: json.username });
});
}
}
来检索user
的代码在哪里? 视图(token
)只是序列化并返回current_user
,而没有检查request.user
是否甚至属于token
。