我们有一个AppEngine应用程序,我们希望与谷歌端点一起使用。我们需要支持一个web客户端以及移动客户端,这使得端点对我们很有吸引力,因为我们可以轻松地生成Android和iOS客户端API。
问题是目前的云端点是不支持自定义域,所以我们的web客户端不能直接与端点通信(移动客户端没有这个问题)。
以下是我们已经尝试过的:
还有其他选择吗?我们希望利用端点的功能来生成移动客户端,同时也可以绕过web客户端的自定义域限制。
发布于 2016-09-30 10:10:27
GoogleCloudEndPoint2.0现在支持自定义域。如果使用的是GoogleCloudEndPoints1.0,则可以通过以下操作进行迁移:
- Rename all occurrences of SystemServiceServlet to EndpointsServlet.
- Replace all occurences of the path /\_ah/spi/\* to the new required path /\_ah/api/\*
请参见:
https://cloud.google.com/appengine/docs/java/endpoints/migrating
https://code.google.com/p/googleappengine/issues/detail?id=9384
发布于 2014-03-11 04:31:12
我们最终完全放弃了Cloud,转而使用了纯Jersey。
为了满足我们为API生成移动客户端的需要,我们用昂首阔步对API进行了注释。额外的好处是,Swagger似乎比Cloud支持更多的客户端生成,并且如果目标语言不受直接支持,那么从模板中设置自己的客户端生成也相对容易。
泽西+ Swagger不像云端点那样容易设置,但它更可定制,并允许我们绕过云端点施加的自定义域限制。
发布于 2015-06-01 08:30:35
最简单的解决方案是使用反向代理。例如,如果您的应用程序是http://myapp.appspot.com,那么在http://myapp.com上创建简单的html页面,并使用javascript重定向到http://myapp.appspot.com。
Index.html on http://myapp.com.
<html>
<head>
<script>
windows.location = http://myapp.appspot.com;
</script>
</head>
<body></body>
</html> 它还有一个优点:如果你把你的代理页面放在另一个主机上(不是appspot.com),你的应用程序( http://myapp.appspot.com )就可以从中国那里访问。
https://stackoverflow.com/questions/21707372
复制相似问题