2016-09-23 51 views
8

我需要我的API返回包含一些用戶信息的對象。例如: api/comment/123需要返回:Auth0 - 用戶信息豐富數據

{ 
    id: 123, 
    author: { 
     id: 'googleblahblah|123456789', 
     name: 'James Bond' 
    } 
} 

通常我會剛剛加入的用戶和評語表,儘管在這種情況下,我不能。我的應用程序的數據庫存儲用戶ID,但名稱(和其他用戶的東西)存儲在Auth0中。

很明顯,對Auth0進行API調用以在每個API調用上「豐富」對象是不合理的。

我是否會在應用程序服務器上緩存所有/某些用戶信息?在API結果中只有用戶標識並讓客戶端豐富數據?

人們如何處理這個問題?

+0

我不知道Auth0,但你標記了智威湯遜,你不能把用戶的名字嗎? – DrakaSAN

+0

我認爲你可以創建一個規則,即時更新用戶信息。唯一的問題是,它在auth0端執行,所以你必須在你的端創建一個API來暴露數據... – Sebas

回答

4

我不認爲有這個問題的最終解決方案。

我所做的是在我自己的數據庫中創建一個user表,其中user iduser name。每當有人通過Auth0登錄時,我會使用OAuth令牌信息創建或更新該表中的登錄用戶信息。

之後,您可以按照您的說明加入表格。

+0

這是我最終做的,工作正常。謝謝 – nick