- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试编译一个 typescript 文件,它一直从编译器中抛出这个错误:错误 TS2339:类型“string”上不存在属性“payload”|目的'。
“string”类型上不存在属性“payload”。
有问题的代码:
decode(token: string): any {
const decodedJWT = jwt.decode(token, { complete: true });
const issuer = decodedJWT.payload.iss;
^^^^^^^^^
return {};
}
我正在使用 @types/jsonwebtoken
库来定义类型。任何帮助将不胜感激。
最佳答案
这个错误是TypeScript类型检查导致的,jwt.decode()
的返回类型是null |对象 | string
,如果你确定 jwt.decode()
总是返回一个对象,你可以将 decodedJWT
转换为 any
类型避免此错误:
decode(token: string): any {
const decodedJWT = jwt.decode(token, { complete: true });
const issuer = (decodedJWT as any).payload.iss;
return {};
}
在上面的例子中,它可能会在运行时导致异常,因为jwt.decode()
可能会返回null
或一个字符串,但只会返回一个object
。包含属性payload
,所以你最好以更安全的方式处理返回值:
decode(token: string): any {
const decodedJWT = jwt.decode(token, { complete: true });
if (decodedJWT === null) {
// deal with null
} else if (typeof decodedJWT === 'string') {
// deal with string
} else {
const issuer = (decodedJWT as any).payload.iss; // cast to `any` type
}
return {};
}
关于typescript - jsonwebtoken typescript 编译问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47045185/
我正在使用 Vue 构建我的第一个 SPA 项目。 我决定在后端使用 NodeJS,但是,使用 JsonWebToken 构建登录功能让我很头疼。 我写了一些代码来查看 JWT 的工作原理,当我试图查
我有一个用于用户身份验证的应用程序,我遇到了这个问题,我有登录的用户并将 JWT (JsonWebToken) 存储在 cookie 中。我在验证用户后存储了 cookie。接下来,我作为管理员,在该
我是 JWT 世界的新手,我想为我的 React Native 应用程序用户创建一个 authToken。 但是,我不愿意让任何人读取里面的内容(例如 userMail、firstName 或 uni
我正在开发一个全栈项目,用户可以在其中创建帐户、访问他们的个人资料、创建博客、阅读他们的博客、删除他们的博客等。为了执行所有这些任务(注册和登录除外),用户必须待验证。 我已经完成了后端,但我不明白如
我正在使用 nodejs 和 angular cli 制作一个 Web 应用程序我正在使用 JWT 来验证我的登录功能。但是当我处理它时抛出了这个错误 Error: Expected "payload
我目前正在使用 React 开发一个网站,我希望能够让用户登录。现在我的策略是在提交时将表单数据发送到服务器( express ),如果信息与我的数据库中的用户匹配,服务器会发回一个没有敏感信息(只有
我正在尝试编译一个 typescript 文件,它一直从编译器中抛出这个错误:错误 TS2339:类型“string”上不存在属性“payload”|目的'。 “string”类型上不存在属性“pay
我收到了 JWT,并想验证它的签名。它未加密,基于 64 编码并使用 HmacSha256 签名。它是用我知道的 secret 签名的。 我似乎找不到任何关于如何在不使用 https://jwt.io
所以我试图通过在 Scalatra 中使用 JWT 来保护我的 Web 应用程序。目前,我将 Scentry 与用户密码和 RememberMe 策略一起使用,我的目的是将 RememberMe 策略
我正在尝试编译一个 typescript 文件,它一直从编译器中抛出这个错误:错误 TS2339:类型“string”上不存在属性“payload”|目的'。 “string”类型上不存在属性“pay
要使 token 无效,据我所知,存储 token 及其过期日期时间到数据库的最佳方法。要验证它,您只需从数据库中选择它,如果它存在,您就知道它已失效。此外,您可以根据过期日期时间从数据库中删除每个过
我目前正在尝试构建一个基于 token 的简单登录系统。我有一个简单的登录表单,可将凭据发送到服务器。创建 token 也对我有用。 如果用户登录并手动打开用户仪表板链接,服务器将收到获取请求。那
据说当您使用 ssl 时,您可以防止中间人从服务器窃取信息到客户端,反之亦然。在我的例子中,窃取了 jsonwebtoken。我还从其他答案中了解到,ssl 使用私钥和公钥。私钥存储在服务器上,公钥提
我正在为 node.js 使用 jsonwebtoken 包: 像这样创建 token : var token = jwt.sign(user, tokenSecret, {expiresInMinu
我正在尝试使用 node.js 设置用户级身份验证,所以我去执行 npm install -g jsonwebtoken --save。但是,当我使用 require('jsonwebtoken')
我正在尝试按照 guide 中的示例将 token 设置为在一小时内过期。 : jwt.sign({ data: 'foobar' }, 'secret', { expiresIn: 60 * 6
我正在尝试使用 Json Web token (在 article 的帮助下)验证我的 nodejs api,但问题是 token 永远不会过期。 var express = require('exp
我想忽略一些针对 token 身份验证进行检查的 API URL 我想保护 post 和 put 方法,但不想保护这个 url 本地主机:3000/api/events/ router.use(fun
我正在使用 jsonwebtoken在 NodeJs API 应用程序中用于验证我的 API 应用程序中的用户。我设置的流程如下: 1) 用户通过注册 API 注册,并使用以下方式生成访问 token
什么是JWT? JSON Web Token(缩写 JWT)是目前最流行的跨域认证解决方案,也是目前前后端分离项目中普遍使用的认证技术. 本文介绍如何在Golang Gin Web
我是一名优秀的程序员,十分优秀!