Javascript 前端:如何访问词典并保存密钥';变量中的s值

Javascript 前端:如何访问词典并保存密钥';变量中的s值,javascript,jquery,Javascript,Jquery,我有一个webapp,它的后端是用Python编写的,并为前端用户呈现一些html 我希望达到的目标是: 当用户向/token发出POST请求时,后端会使用JSON文档{“访问令牌”:访问令牌,“令牌类型”:“承载者”};这已经到位 在上述情况发生后,对webapp的每个后续请求/导航,都应将名为Authorization的标题设置为Bearer,等于GET,POST等请求;暂时不重要 您能否建议并描述如何维护名为access\u-token的单一变量客户端,使其默认值为null,但在执行POS

我有一个webapp,它的后端是用Python编写的,并为前端用户呈现一些html

我希望达到的目标是:

  • 当用户向
    /token
    发出
    POST
    请求时,后端会使用JSON文档
    {“访问令牌”:访问令牌,“令牌类型”:“承载者”}
    ;这已经到位
  • 在上述情况发生后,对webapp的每个后续请求/导航,都应将名为
    Authorization
    标题设置为
    Bearer
    ,等于
    GET
    POST
    等请求;暂时不重要
  • 您能否建议并描述如何维护名为
    access\u-token
    的单一变量客户端,使其默认值为
    null
    ,但在执行
    POST
    /token
    时,变量
    access\u-token
    将被初始化,并且不会通过导航进行更改,除非最终用户再次向
    /token
    发出另一个
    POST
    请求,以将
    访问令牌
    重置为新值

  • 我对
    jQuery
    javascript
    不太熟悉。根据上述背景信息,您可以建议如何初始化、设置、重置变量(例如,使用
    控制台.log
    )吗?

    您可以将令牌存储在本地存储器或cookie中,这两种方法都可以。然后,当您进行ajax调用时,您将从您使用的任何一个调用中检索值,并将其添加到传出的ajax请求中。具体如何做到这一点将取决于您使用的具体ajax实现。例如,google“AddAuthTokentojQuery.ajax”,您将找到该库的正确语法

    类似这样的方法会奏效:

    // do initial login and get token
    var token = response.access_token;
    
    // store it in local storage
    localStorage.setItem('apiKey', token);
    
    // ... navigate around and what not...
    
    
    // later, when you need to make another call, get the token 
    var token = localStorage.getItem('apiKey');
    
    $.ajax({
        url: url,
        method: "POST",
        dataType: "json",
        //.. other props as needed...
        beforeSend: function (xhr) {
            /* set the Authorization header with the token */
            xhr.setRequestHeader("Authorization", "Bearer " + token);
        },
        success: function (data) {
          // do something cool with data
        },
        error: function (jqXHR, textStatus, errorThrown) {
            // handle errors ...
        }
    });
    

    您可以将令牌存储在本地存储器或cookies中,这两种方法都可以。然后,当您进行ajax调用时,您将从您使用的任何一个调用中检索值,并将其添加到传出的ajax请求中。具体如何做到这一点将取决于您使用的具体ajax实现。例如,google“AddAuthTokentojQuery.ajax”,您会找到该库的正确语法谢谢@WesleySmith您能描述一下访问
    access\u token
    值并初始化、设置、重置本地存储变量的
    jquery
    代码段是什么样子的吗?