[英]Server-side redirect if not logged in
我使用Cloud Endpoints並使用客戶端oauth訪問我的后端。 這樣可以正常工作,除了它意味着我只能在整個頁面和附加的腳本加載並且oauth請求完成后才能檢查打到我的應用程序URL的人是否是用戶。
我想啟用服務器端身份驗證,以便為登錄頁面和我的應用程序使用相同的URL,如果用戶是用戶,則將用戶重定向到應用程序,如果不是,則將用戶重定向到登錄頁面。
問題是User Tutorial使用UserService進行身份驗證,而Cloud Endpoints使用OAuth服務 。 我無法弄清楚如何在我的重定向過濾器中使用OAuth,因為上面鏈接的OAuth部分的所有鏈接都是針對OAuth 1的,並且已棄用 。
如何檢查我的重定向過濾器是否訪問的用戶是否是用戶並同時獲得一個令牌,如果她是用戶,我可以使用該令牌隨后呼叫我的端點?
我正在使用Google Api JS客戶端來調用雲端點,因此解決方案將與其進行最佳集成,使用gapi.auth.setToken(token)
檢索令牌並繞過整個gapi.auth.authorize(params, callback)
舞蹈。
您可以將用戶API用於端點,如果不符合您的需求,則無需使用OAuth。 您只需要將com.google.appengine.api.users.User
類型的參數添加到您的終端。 如前所述這里 。
例如:
@ApiMethod(name = "scores.insert")
public Score insert(Score score, User user) throws OAuthRequestException, IOException {
//Check if user is null
//Do your thing
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.