嗨,我正在使用 spring 安全性在 Spring Boot 中编写 JWT。当我使用正文部分中的以下详细信息向邮递员请求 POST 时
{
"userName": "RAM",
"id":123,
"role": "admin"
}
Run Code Online (Sandbox Code Playgroud)
然后我得到低于错误
{
"timestamp": "2018-05-06T14:57:12.048+0000",
"status": 500,
"error": "Internal Server Error",
"message": "Base64-encoded key bytes may only be specified for HMAC signatures. If using RSA or Elliptic Curve, use the signWith(SignatureAlgorithm, Key) method instead.",
"path": "/token"
}
Run Code Online (Sandbox Code Playgroud)
我使用以下代码用于生成器的 jwt builder
@Component
public class JwtGenerator {
public String generate(JwtUser jwtUser) {
// TODO Auto-generated method stub
Claims claim= Jwts.claims()
.setSubject(jwtUser.getUserName());
claim.put("userId", String.valueOf(jwtUser.getId()));
claim.put("role", jwtUser.getRole());
String secret …Run Code Online (Sandbox Code Playgroud)