如何在Django中一次性传递令牌数据和呈现模板?

如何在Django中一次性传递令牌数据和呈现模板?,django,django-rest-framework,jwt,Django,Django Rest Framework,Jwt,我有一个登录表单,可以将用户重定向到应用程序中的某个页面。但在此之前,我使用了JWT令牌(通过简单的JWT库),需要将这些令牌存储在Javascript代码中(以便在登录后访问每个页面)。我对使用代币完全陌生,不知道如何存储它们。我该怎么做 这是我以前做过的: 视图。py: def login(request): if request.method == 'POST': login_form = LoginForm(request.POST) if log

我有一个登录表单,可以将用户重定向到应用程序中的某个页面。但在此之前,我使用了JWT令牌(通过简单的JWT库),需要将这些令牌存储在Javascript代码中(以便在登录后访问每个页面)。我对使用代币完全陌生,不知道如何存储它们。我该怎么做

这是我以前做过的:

视图。py:

def login(request):
    if request.method == 'POST':
        login_form = LoginForm(request.POST)
        if login_form.is_valid():
            username = login_form.cleaned_data.get('username')
            password = login_form.cleaned_data.get('password')
            new_user = authenticate(username = username, password = password)
            if new_user is not None:
                url = 'http://localhost:8000/api/token/' 
                values = {
                    'username' : username,
                    'password' : password
                }
                r = requests.post(url, data = values) 
                token_data = r.json()
                return Response(token_data, template_name='users/interface.html') #interface is the template which is seen after logging in successfully.
    else:
        login_form = LoginForm()
    return render(request, "users/login.html", {"login_form" : login_form})
AssertionError at /login/
.accepted_renderer not set on Response
目前,我遇到了以下错误:

def login(request):
    if request.method == 'POST':
        login_form = LoginForm(request.POST)
        if login_form.is_valid():
            username = login_form.cleaned_data.get('username')
            password = login_form.cleaned_data.get('password')
            new_user = authenticate(username = username, password = password)
            if new_user is not None:
                url = 'http://localhost:8000/api/token/' 
                values = {
                    'username' : username,
                    'password' : password
                }
                r = requests.post(url, data = values) 
                token_data = r.json()
                return Response(token_data, template_name='users/interface.html') #interface is the template which is seen after logging in successfully.
    else:
        login_form = LoginForm()
    return render(request, "users/login.html", {"login_form" : login_form})
AssertionError at /login/
.accepted_renderer not set on Response

如何将令牌数据传递到JS文件并立即呈现“接口”模板?我应该为此使用AJAX吗?或者,还有其他有效的解决方案吗?非常感谢。

您遇到了什么错误?我只是停留在登录页面上。这就是全部。我的终端没有显示任何错误。请检查您的登录功能是否工作。我更改了我的问题,希望听到您的回答。