我正在使用.NET的MirrorQuickStart項目,並且遇到刷新令牌的問題。從我所知道的情況來看,當「通知」操作進入時間線訂閱更新時,它不會被使用。用於.NET和刷新令牌的Glass快速入門
將應用程序發佈到開發服務器,基本上與更新正確的ID和配置信息的情況不同,「通知」操作在第一個小時內運行,但在此之後,它會停止響應,直到我刷新網頁並重新認證。
我檢查了數據庫服務器上的StoredCredentials表,它具有填充的UserId,AccessToken和RefreshToken值。我還在標準應用程序流程中創建了一個新的鏡像服務(因爲我不知道如何調試通知流程並查看發生的任何實際錯誤消息),並且每次都會在服務上看到AccessToken和RefreshToken。
MirrorService service = new MirrorService(new BaseClientService.Initializer
{
Authenticator = Utils.GetAuthenticatorFromState(
Utils.GetStoredCredentials(userId))
});
我已經審查了驅動器的DrEdit項目和流程似乎是基本相同的的GEtAuthenticatorFromState
和GetStoredCredentials
方法上。
這個問題似乎與我遇到的問題最直接相關,但是就鏡像項目而言,答案沒有意義。
How to generate access token using refresh token through Google Drive SDK in .NET?
有一定有一些簡單的我失蹤 - 只是不知道,因爲我是相當新的OAuth的流動。
謝謝。
您是否在通知端點上收到特定錯誤? – Alain
一直試圖調試更多 - 我認爲這個邏輯應該適用於NotifyController,但我修改了MainController以使用由我包含在原始文章中的代碼創建的「服務」(由UserId硬編碼用於測試目的)。當我嘗試檢索訂閱列表時,出現401 Unauthorized錯誤。理論上,這應該與NotifyController嘗試使用的「服務」相同。 – Kyle