我有一个发行JWT令牌的终点:
{
"name": "My colour scheme",
"globals":
{
"background": "rgb(0, 0, 0)",
"foreground": "#aaaaaa",
"caret": "red",
"line_highlight": "#222222"
},
}
/getJwt
我的应用程序具有各种端点来获取数据,例如:
token: {
"access_token": "kjhfdhglkfhjkjfhgkjfghdkjhgkjdsgfkjhdfkjgkjhfujksfknbvckjfhdbncvujkdhgvbnfjkdghnbv",
"expires_in": 2592000, // this is equal to 30 days - I dont have information when it is generated
"token_type": "Bearer"
}
以此类推...
所有这些端点都需要JWT进行访问。 如果JWT过期,我会返回以下响应:
/getUser
/getbusinesses
{
"code": "401",
"message": "Unauthorized",
"errorList": [{
"code": "AUTH0007",
"message": "Malformed JWT token",
"fieldName": "Authorization"
}]
}
对于JWT到期是唯一的。
我可以仅根据从上述端点返回的错误响应向code:"AUTH0007"
发出请求,然后重新提交失败的请求,还是需要让用户再次触发该请求?
我愿意提出实施任何更好方法的建议。
我成功地为每个要求拨打了JWT的电话-我只想在失败时拨打电话。
简单的“ GET请求”
getJwt
答案 0 :(得分:0)
处理此问题的更好方法是将用户重定向到登录页面(当您获得 401 时),以便用户重新进行身份验证。因此,您可以获取一个新的JWT,并允许用户再次触发API调用。