0

允許我有一項服務提供訪問另一個數據服務(googledrive)。如何保存訪問數據的進一步使用它在谷歌API?

這是否可以保存用戶的訪問數據以進一步使用它?

用戶在我的服務中選擇一個googledrive,我重新登錄google認證頁面。 他接受並在此工作。經過幾天他想要在googledrive服務上工作,他應該能夠在不接受的情況下做到這一點。 我該怎麼做?

我希望我解釋一下什麼想要..

事先問候!

回答

0

如果用戶在您需要連接到Drive API時出現/與您的應用程序進行交互,那麼您不需要做任何特殊的事情。每當訪問令牌過期(曾經1小時),只需在彈出窗口中重新授權(或者如果在請求中設置了立即數= true,則隱藏iframe),這將生成新的訪問令牌而不會重新提示用戶。只要用戶不撤銷對應用程序的訪問權限,此功能就可以工作。

如果您需要在後臺處理或無法與用戶交互的隊列中訪問雲端硬盤,請在創建初始授權請求時包含access_type = offline。除訪問令牌外,這將產生一個刷新令牌。刷新令牌可用於獲取新的訪問令牌而無需用戶交互,前提是它們尚未撤銷訪問權限。

+0

謝謝,史蒂夫表示!現在我有另一個問題,所以我不創建新的問題,並在那裏問。我如何編寫規格(Rspec,Capybara e.t.)?如何在谷歌中授權用戶以及如何從測試代碼獲取訪問令牌的authoration_code?請解釋一下!在哪裏我可以找到理解如何編寫規範是這樣的。謝謝.... – dilshod

+1

你想要測試什麼?如果你不關心與活服務器交談,只想存根/模擬網絡調用,那麼signet和google API客戶機都允許在調用中傳遞一個連接(:options中的連接)。連接可以是您可以使用它來驗證正確的調用,您可以使用法拉第的Stub連接類來實現此功能。另一方面,如果您希望集成測試碰到真實事物,那麼您可能希望在測試設置中對訪問/刷新令牌進行一些簡單的持續存儲,這樣您就不需要重新授權每次測試運行。 –

+0

史蒂夫,非常感謝! – dilshod

相關問題