某人可以指定(通過一些示例代碼)如何驗證谷歌雲端點中的谷歌雲端代碼?最近提出的問題根本沒有說明(How to integrate firebase authentication with google app engine endpoints)將谷歌應用引擎雲端點集成的Firebase身份驗證
端點中的Google身份驗證是通過將用戶參數添加到端點來自動完成的。
@ApiMethod(name = "endpoint.addUser", httpMethod = HttpMethod.POST)
public ResultObject addUser(HttpServletRequest request, User pUser) throws OAuthRequestException {
String token = request.getHeader("Authorization");
String graphUrl = "https://graph.facebook.com/v2.6/me?fields=id,name,email&access_token=" + token;
URL u = new URL(g);
URLConnection c = u.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(c.getInputStream()));
String inputLine;
StringBuffer b = new StringBuffer();
while ((inputLine = in.readLine()) != null){
b.append(inputLine + "\n");
}
in.close();
graph = b.toString();
JSONObject json = new JSONObject(graph);
facebookId = json.getString("id");
email = json.getString("email");
//...
}
是對火力的標識作爲Facebook的令牌一樣簡單的驗證: Facebook的令牌可以在像這樣Facebook的圖形API的雲終端進行驗證?是否可以從Firebase令牌中檢索電子郵件?
我無法準確回答Firebase,但我會說這不是整合驗證的正確方法。您應該改爲實施com.google.api.server.spi.config.Authenticator。然後在你的註釋中指定'Authenticator'。我相信Firebase身份驗證令牌是JWT,因此他們不需要發送驗證它們的請求。 – saiyr
是的,這是corect。在最後的實現中,你會使用Authenticator。我只想包含演示代碼。 – SmilingM
至於firebase,我想驗證令牌的原因是,我已經有一個正在運行的應用程序引擎端點。現在我想在客戶端使用Firebase身份驗證,並針對雲端點進行身份驗證。我現在不想遷移到Firebase實時數據庫。 – SmilingM