重新提交具有更新的jwt令牌的请求

时间:2018-09-16 20:20:43

标签: javascript node.js express jwt

我有一个发行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

1 个答案:

答案 0 :(得分:0)

处理此问题的更好方法是将用户重定向到登录页面(当您获得 401 时),以便用户重新进行身份验证。因此,您可以获取一个新的JWT,并允许用户再次触发API调用。