使用Google Cloud Endpoints时的身份验证问题

时间:2017-03-09 05:58:00

标签: google-app-engine android-studio firebase-authentication google-cloud-endpoints

我目前正在使用Android工作室和Android工作室的谷歌云端点模块开发Android应用程序。因此,我尝试通过Firebase Auth添加用户身份验证,以便为用户提供来自不同用户的登录选项。但是每当我尝试将身份验证代码添加到我的端点类中的API时。 apiIssuer和ApiissuerAudience始终没有得到解决。我已经尝试了所有的东西,我无法解决这个问题所以我假设我没有做或做错了什么来影响这部分代码。

package com.example.Kendrickod.myapplication.backend;

import com.example.Kendrickod.myapplication.backend.domain.Profile;
import com.google.api.server.spi.auth.EspAuthenticator;
import com.google.api.server.spi.config.Api;
import com.google.api.server.spi.config.ApiMethod;
import com.google.api.server.spi.config.ApiNamespace;
import com.google.api.server.spi.config.Named;

/**
* Defines event APIs.
*/


/** An endpoint class we are exposing */
@Api(name = "event",
    version = "v1",
    namespace = @ApiNamespace(ownerDomain =
     "backend.myapplication.Kendrickod.example.com",
            ownerName = "backend.myapplication.Kendrickod.example.com",
            packagePath = ""),
    authenticators = {EspAuthenticator.class},
    issuers = {
            @ApiIssuer(
                    name = "firebase",
                    issuer = "https://securetoken.google.com/YOUR-PROJECT-ID",
                    jwksUri = "https://www.googleapis.com/service_accounts/v1/metadata/x509/securetoken@system.gserviceaccount.com")
    },
    issuerAudiences = {
            @ApiIssuerAudience(name = "firebase", audiences = "YOUR-PROJECT-ID")
    },
    clientIds = {Constants.WEB_CLIENT_ID, Constants.ANDROID_CLIENT_ID, Constants.IOS_CLIENT_ID},
    audiences = {Constants.ANDROID_AUDIENCE})

 public class EventApi {


 }

1 个答案:

答案 0 :(得分:0)

你必须包括这个库!

com.google.endpoints:端点框架-AUTH:1.0.2

这似乎微不足道但却不容易找到......我必须全部尝试。

如果你使用Android Studio,请转到Build / Edit library and dependenciesm,点击“+”并搜索“endpoints-framework”