问题标签 [google-cloud-endpoints-v2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Java JDK10中的TypeTags错误
我正在研究云端点。当我关闭它时,一切正常。但是几个月后我再次安装了所有东西并尝试运行这个项目但无法做到这一点现在出现了某种错误。我认为这是由于JDK版本的原因,我没有确认。这次我使用的是JDK10。
这是错误(当我运行时mvn clean package
):
Fatal error compiling: java.lang.ExceptionInInitializerError: com.sun.tools.javac.codeTypeTags
这是pom文件。
您能否让我知道确切的问题是什么以及如何解决。
更新
我只是用-e ( )重新运行命令mvn clean package -e
我正在使用 windows 命令提示符。
这是我得到的。
java - appengine-maven-plugin:1.3.1 运行失败非零退出
我正在尝试hello-endpoint-framework
使用maven archetype
我使用此命令构建项目来创建。
我设置-Djava8=true
是因为我想在java8中运行它。
这是pom.xml
文件。
在此之后,我运行此命令mvn clean package
来构建项目。然后我跑mvn appengine:run
了,但我得到了这个错误。appengine-maven-plugin:1.3.1 运行失败非零退出
我用-e重新运行我的命令,这就是我得到的。
我只了解一个错误项目没有定义所需的 Maven 最低版本。我在 pom 中设置了最低版本,但仍然是同样的错误。
在此之后,我还尝试更新 gcloud 组件gcloud components update
但无法解决此错误。
我正在使用JDK10
我还有另一个问题,这个项目是针对java7还是针对java8的。我想在java8中运行这个项目,这就是我设置的原因-Djava8=true
但我不认为这个项目是为 java8 环境创建的,是吗?如果不是,我该怎么做?
那么appengine-maven-plugin错误呢?我该如何解决这个问题?为什么我会看到这个,Cloud SDK有什么问题吗?或者还有什么别的原因。
google-cloud-endpoints-v2 - 使用带有自定义域的 Google 云端点框架 2.0
App engine standard environment
我在using中托管了一个移动后端(用 Java 编写)Cloud endpoint framework 2.0
,我可以通过这个 URL https://api-dot-[projectId]-appspot.com/_ah/api/myApi/v1/path 访问它
现在我正在尝试使用自定义域 [api.mydomain.app] 以及我所做的:
1-我已经api.mydomain.app
在我的 appengine 设置中添加了这个域,它现在已经过验证,并且有一个由谷歌管理的有效 SSL
2-我在godaddy的这个域“mydomain.app”中添加了8条DNS记录(A和AAAA),如下所示:
我对@
(对于默认服务)和admin
(对于管理服务)有相同的记录,并且两者都工作得很好我也有这个记录CNAME * ghs.googlehosted.com
3- 我在 dispatch.xml 下面添加了这些记录:
4- 此后端的模块名称定义appengine-web.xml
为api
5-这是我的 API 类的定义
6-这就是我在 web.xml 中定义 EndpointsServlet 的方式
所以在完成所有这些之后,每当我尝试访问https://api.mydomain.app/myApi/v1/path
或https://api.mydomain.app/path
它向我显示此响应时:
在服务器日志中我看到了这个No handlers matched this URL.
那么你能帮帮我吗?我错过了什么吗?
提前致谢!
protocol-buffers - gcloud端点部署错误未解决类型
我正在尝试部署需要google protobuf 时间戳的服务,但我收到错误消息。
我生成 api_descriptor.pb 的命令:
需要 google.protobuf.Timestamp 的 proto 文件中的相关位:
尝试了几个小时未能成功解决此问题。提前致谢!
google-app-engine - 在 Google Cloud Endpoint 中启用 API 密钥
我正在 Google App Engine Standard (Google Cloud) 中开发 Cloud Endpoint,并且 API 调用在本地和部署的 Google App Engine 中都在工作。
我正在尝试使用此处指定的 API 密钥限制 API 访问,请逐步执行:
https ://cloud.google.com/endpoints/docs/frameworks/java/restricting-api-access-with-api-keys-构架
我还配置了我的 openapi.json 文件:
但我仍然可以访问我的方法,而无需在 url 中添加任何 ?key= 。
我还注意到,在 Google Cloud Console 的 Endpoint 部分中,我可以看到我部署的 API,但是当我拨打电话时,我没有看到来自我的 API 的任何活动,因为这些活动出现在 Google App Engine 日志中。
配置中遗漏了什么?
谢谢。
android - 在云端点库中传递 Nullable 参数
我正在Google Cloud Endpoint
为 Java 工作。我创建了一些端点。这是其中之一。
如您所见contactList
,@Nullable
有时我需要此参数或有时不需要此参数。当我在API Explorer上测试它时一切正常
毕竟,我为 Android 生成了客户端库。我正在这样使用它。
registerUser
仅提供三个参数。如果我想通过contactList
,我该怎么做?没有选项可以将其传递给registerUser
. 如果我尝试通过它,则会出现错误。
android - 从客户端调用云端点库
我创建了Google Cloud endpoint
库并按照从 Android 调用 Google API中的说明进行操作
但我无法使用我的端点。我在Android Studio中创建了一个新项目
并将所有依赖项复制到gradle.build
但是当我运行该项目时,我看到以下错误。
Java 编译器:
安卓问题:
我MainActivity.java
的现在是空的。这是我的gradle.build
在我的整个 Api 中,我不需要进行任何经过身份验证的调用所以,请让我知道不需要什么库,所以我删除了。我想实现必要的迷你库。请让我知道为什么我会遇到这个错误。
java - Authenticator 和 PeerAuthenticator 不工作 Appengine 端点
升级到 V2 端点后,我使用 @peerAuthenticator 的 API 无法验证对等方。我使用@Authenticator 进行了测试并且遇到了同样的问题,忽略了执行。
我在 GitHub 上创建了一个存储库以使用空应用程序进行测试。
该存储库是通过google 文档的步骤创建的。
运行应用程序后,
mvn appengine:run
您可以请求 3 个端点:- http://localhost:8080/_ah/api/myapi/v1/firstApiMethod(没有任何身份验证)
- http://localhost:8080/_ah/api/myapi/v1/b(带
@authenticator
) - http://localhost:8080/_ah/api/myapi/v1/c(带
@peerAuthenticator
)
API
/li>身份验证器
/li>对等身份验证器
/li>
有没有人有同样的问题?有什么解决方案吗?
google-app-engine - Google App Engine 如何关联不同的用户 ID?
我正在尝试将我的 Google App Engine Endpoints API 中的用户与 Google App Engine Web 前端的用户相关联,例如需要身份验证的 .jsp 页面。
我可以对两者进行身份验证,但 Endpoints API 有一个用户类型
在应用引擎中,用户属于以下类型:
我的问题是getUserId()
这两种类型中的每一种都返回不同的值。
每个都有一个方法 getUserId(),但对于同一个用户(相同的电子邮件地址)来说是不同的。
我如何将两者联系起来?
显然我可以使用电子邮件地址,但最佳实践表明最好不要这样做,因为用户可以有效地更改他们的电子邮件地址(或有多个)。
返回 114374052554615681603,与我的Google+ 个人资料上的com.google.api.server.spi.auth.common.User::getUserId()
用户 ID 相同,而返回 113407138228786534305,这是不同的,所以我的直觉是前者是“正确的”,而后者是“错误的”。com.google.appengine.api.users.User::getUserId()
我试着做
来自 API,但currentUser
为空。
从另一种方式来看,我可以调用https://www.googleapis.com/oauth2/v1/userinfo API 以从 App Engine 页面获取配置文件,但这需要一个 Authorization 标头,代表已记录在用户上,我没有。
我怎样才能在不比较电子邮件地址的情况下将两者结合起来?
google-app-engine - Google Endpoints V2 和 Maven 插件版本?
我们有一个使用目标为ear文件的多模块(war打包)项目。com.google.appengine - appengine-maven-plugin
我们已经成功迁移到 Java8 和 EndpointsV2。它在 Cloud 中构建和运行良好。但是,迁移说明中的以下要求仍然有点问号。这种不兼容和要求背后的原因是什么?或者它只是与我们不使用的“发现文档”有关?
带有 com.google.appengine 组的旧 App Engine Maven 插件与 Endpoints Framework 插件不兼容。您必须使用上面显示的新版本
https://cloud.google.com/endpoints/docs/frameworks/java/migrating