自动化应用程序的基于令牌的身份验证

Token Based Authentication For Automated Apps

(使用 Web API)自动化应用程序在其令牌过期时接收错误以获取新令牌的 correct/most 适当方法是什么?

我了解基于令牌的身份验证如何为坐在屏幕前的最终用户工作,即当他们的令牌过期时,他们的下一个请求会将他们重定向到登录页面以获取新令牌。

不过,我想知道自动化应用程序的最佳做法是什么。 在这种情况下,屏幕前没有任何东西,因此重定向到屏幕以输入详细信息是不合适的。

我是否应该 return 在 401 响应中 url 以便客户端应用程序获取,以便他们知道在哪里执行 POST 以获得新令牌,或者是仅 return 401 并记录用户应该去哪里获取新令牌更合适?

如果 returning url 和 401 响应是合适的,那么实现此目的的正确响应格式是什么?

一般来说,我认为只 return 一个 401 并让客户端处理错误就可以了。此时您的网络 api 应用程序已经完成了它的工作,接下来由客户决定做出什么决定。据推测,客户端应用程序应该知道从哪里获得新令牌,首先创建一个令牌。

另一种选择是使用 'Renew Token' 方法在旧令牌过期之前生成新令牌(如果您的令牌过期相当快,否则不会打扰)。