当我使用Camunda进行部署的时候,后端报错JWT strings must contain exactly 2 period characters. Found: 0
时间: 2023-11-14 21:56:06 浏览: 189
这个错误通常是由于 JWT(JSON Web Token)格式不正确引起的。JWT 是一种安全令牌,用于在不同的应用程序之间传递身份信息。它由三部分组成:头部、载荷和签名,这三部分之间用点号(.)分隔。在你的情况下,错误信息显示 JWT 字符串中没有找到两个点号,这意味着 JWT 格式不正确。
要解决此问题,你需要检查你的 JWT 是否符合标准格式。确保字符串中有两个点号(.),并且每个部分都是有效的 JSON 格式。你可以使用在线 JWT 解码器检查你的 JWT 是否正确格式化,并且确保头部和载荷部分的信息是正确的。
如果你已经确认 JWT 格式正确,但仍然遇到此错误,请检查你的代码,确保你正确地将 JWT 传递给 Camunda 后端。你可以参考 Camunda 官方文档中的示例代码来确保你的代码正确。
相关问题
JWT strings must contain exactly 2 period characters. Found: 0
This error message indicates that the input provided as a JWT string does not have the expected format. JWT strings consist of three parts separated by period characters: the header, the payload, and the signature. Each of these parts should be base64-encoded and separated by a period character.
If the input provided does not contain any period characters, it is not a valid JWT string. It is possible that the input has been truncated or modified in some way, or that it was never intended to be a JWT string.
To resolve this error, ensure that the input provided is a valid JWT string with all three parts separated by exactly two period characters. If necessary, regenerate the JWT string or obtain a new one from the appropriate source.
jsonwebtoken.MalformedJwtException: JWT strings must contain exactly 2 period characters. Found: 0
这个错误是由于JWT字符串格式不正确导致的。JWT字符串由三部分组成,每个部分之间用点号分隔。这个错误提示表明JWT字符串中没有找到两个点号,因此它不符合JWT字符串的格式要求。可能的原因是在创建JWT字符串时,某些部分被省略或格式不正确。要解决这个问题,需要检查JWT字符串的格式是否正确,并确保它包含三个部分,每个部分之间用点号分隔。
以下是一个创建JWT字符串的示例代码,其中包含三个部分:头部,载荷和签名。请注意,每个部分都是一个JSON对象,并且它们之间用点号分隔。
```swift
import JWT
let header = Header(alg: .hs256)
let payload = Payload(iss: "fuller.li", iat: Date())
let signer = JWTSigner.hs256(key: "secret".data(using: .utf8)!)
let jwt = JWT(header: header, payload: payload)
let data = try jwt.sign(using: signer)
let jwtString = String(data: data, encoding: .utf8)
print(jwtString)
```
阅读全文