2
如果應用程序無法訪問瀏覽器控件或http上下文,是否可以刷新令牌?我有一個WinForm記錄用戶並獲得同意,然後它將令牌傳遞給Windows服務,以便文件可以上傳到OneDrive。當令牌過期時,似乎所有刷新令牌的方法都需要回調URL。如何從Windows服務刷新令牌?
如果應用程序無法訪問瀏覽器控件或http上下文,是否可以刷新令牌?我有一個WinForm記錄用戶並獲得同意,然後它將令牌傳遞給Windows服務,以便文件可以上傳到OneDrive。當令牌過期時,似乎所有刷新令牌的方法都需要回調URL。如何從Windows服務刷新令牌?
如果您已請求wl.offline_access
範圍並且您在OAuth 2.0中使用授權碼授權流程,則可以執行此操作。一旦用戶通過OAuth登錄,您將收到有效期爲1小時的access_token
和長期有效的refresh_token
。
您的每一個服務需要做代表用戶的工作時間,你可以贖回refresh_token
新access_token
和refresh_token
,然後用access_token
做的工作。確保你保存了新回覆的refresh_token
,以確保延長到期日期。
這樣您就可以擁有一項代表用戶長時間執行操作的服務,而無需用戶再次登錄。但是,refresh_token
可能會過期或無效,因此您需要處理無法兌換refresh_token
的情況。