今天早上,我的Android应用程序对我的Google Cloud Endpoint的每个API请求都发生了以下异常:
com.google.api.server.spi.auth.GoogleIdTokenUtils verifyToken:verifyToken:签名长度不正确:得到256但是期待128
来自我的javascript网络客户端的电话仍然完美无缺.我在服务器端代码或客户端代码上没有任何改动.
最近服务有什么变化可能会导致这种情况发生吗?
更新:第一次出现这种情况似乎是在UTC时间11:17:07
更新:不起作用的事情包括为Android生成新的客户端ID并更新到App Engine SDK 1.9.22
google-app-engine android google-cloud-endpoints google-cloud-platform
我在使用Google Cloud Endpoints时遇到了困难.我有一个在GAE上运行的Python端点项目,它使用api explorer完美运行.但是我正在努力正确生成客户端库并在我的Android应用程序中使用它.我尝试了很多样本项目,每次都遇到同样的问题; 我无法从客户端库导入和使用模型类.
这就是我正在做的事情(对于这个例子,我将在https://github.com/GoogleCloudPlatform/appengine-endpoints-helloendpoints-python上使用helloworld api python示例)
通过导航到文件夹并运行来生成客户端库
<gae-sdk>\endpointscfg.py get_client_lib java helloworld_api.HelloWorldApi
Run Code Online (Sandbox Code Playgroud)解压生成的文件夹并复制到eclipse中的项目根目录
在Eclipse中添加"your_app_id_appspot_com-helloworld-v1-20140310110152-java-1.17.0-rc-sources.jar"来构建路径(右键单击JAR>构建路径>添加到构建路径)
在这个阶段,我可以导入,com.appspot.your_app_id.helloworld.model.*但我无法导入com.appspot.your_app_id.helloworld.model.Greeting
任何人都可以了解这里发生的事情吗?我已尝试了许多不同的方法来使其工作,但每次都有同样的问题.
非常感谢,
汤姆
python eclipse google-app-engine android google-cloud-endpoints
我正在尝试在我的 android 应用程序上迁移到 firebase auth。包名称和 SHA1 当前与旧的应用引擎项目(我不想升级到 firebase)相关联,因此我无法将 SHA1 指纹添加到我的新 firebase 项目中。App Engine 项目目前正在生产中,因此我无法删除 android 客户端 ID 或删除该项目。此处的文档https://support.google.com/firebase/answer/6401008?authuser=0说我应该能够将旧应用引擎项目的客户端 ID 列入白名单。但是,当我这样做然后尝试使用 google 使用 firebase auth 登录到应用程序时,我收到以下错误"Developer error: this application is misconfigured. Check your SHA1 and package name in the Firebase console."
我还尝试了此处的说明https://firebase.googleblog.com/2016/12/working-with-multiple-firebase-projects-in-an-android-app.html,其中涉及将GoogleSignInOptions对象传入 AuthUI 构建器使用来自相应项目的 Web 客户端 ID,如下所示:
private void StartLoginActivity() {
GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestIdToken("<my-client-id>.apps.googleusercontent.com")
.requestEmail()
.build();
List<AuthUI.IdpConfig> providers = Arrays.asList(
new AuthUI.IdpConfig.EmailBuilder().build(),
new AuthUI.IdpConfig.GoogleBuilder().setSignInOptions(gso).build());
startActivityForResult(
AuthUI.getInstance()
.createSignInIntentBuilder()
.setAvailableProviders(providers)
.build(),
RC_SIGN_IN);
} …Run Code Online (Sandbox Code Playgroud)