You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在jQuery中从Web服务返回的JSON提取token并存储到localStorage

解决提取token并存储到localStorage的问题

嘿,我来帮你搞定这个问题!首先得说清楚你代码里的问题出在哪:

你拿到的response已经是一个完整的JSON对象了,直接包含token和expires两个属性,但你却用了$.each去遍历它,而且还错误地尝试访问element.value——这个对象里根本没有value这个属性,这就是导致那个TypeError的原因。

正确的写法其实超简单:

直接跳过$.each这一步,从response里直接取出token值就行,代码修改如下:

$.ajax(settings).done(function (response) {
    console.log(response);
    $(".Results").html(JSON.stringify(response)); // 直接放对象会显示[object Object],转成字符串才能正常展示响应内容
    var token = response.token; // 直接获取token属性值
    console.log(token);
    localStorage.setItem("token", token);
});

额外补充(如果非要用$.each的情况):

其实完全没必要遍历这个对象,但如果出于学习目的想试试,正确的遍历写法是这样:

$.each(response, function (key, value) {
    if (key === 'token') {
        console.log(value);
        localStorage.setItem("token", value);
    }
});

这里key是对象的属性名(比如'token'、'expires'),value就是对应的属性值,所以当key匹配'token'时,value就是你要的令牌字符串。

内容的提问来源于stack exchange,提问作者Ortund

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.11 08:40:25