App Engine的“ Cloud Endpoints Framework for App Engine”和“ Google Protocol RPC Library”之间的区别

问题描述 投票:2回答:0

我正在寻找方法,以展示已在Google App Engine应用程序中实现的业务逻辑作为RPC服务供移动客户端调用; 似乎有两种方法可以做到这一点:

  • 适用于App Engine的Google协议RPC库 。 那里的示例让我使用protorpc.wsgi.service.service_mapping创建了WSGI服务,该服务暴露了其服务方法以protorpc.remote.method装饰的服务类。

  • App Engine的Cloud Endpoints框架 。 那里的示例让我使用endpoints.api_server创建了一个Cloud Endpoint,它公开了服务类,这些类的方法都用endpoints.method装饰。

我从Google协议RPC库开始,因为那是App Engine文档中链接的主要内容,并使RPC正常工作,我可以使用简单的curl命令进行验证。 但是我找不到如何生成Android / iOS客户端库。

搜索较长时间后,我发现App Engine的Cloud Endpoints框架似乎提供了生成Android / iOS库的选项,但是我对这两个选项之间的相似性感到困惑(例如,Cloud Endpoints Framework至少依赖于部分也是在protorpc上,但是装饰器和处理程序是不同的),并且不确定我应该选择哪一个。

(注意:我了解Cloud Endpoints可用于更多环境,例如Compute Engine,但我希望尽可能保持App Engine标准 。)

我的问题:

  1. 有人可以说出这两个看似非常相似的解决方案之间的区别吗? 在某些情况下,相对于App Engine的Cloud Endpoints框架,我可能更喜欢使用Google协议RPC库? 在哪些其他情况下,首选Cloud Endpoints Framework?

  2. 有没有一种方法可以根据为Google协议RPC库编写的API定义生成客户端库? 现在,我已经使用了简单的Google协议RPC库版本,现在不确定是否应该为了客户端代码生成而迁移到App Engine的Cloud Endpoints Framework。

python google-app-engine google-cloud-endpoints
© www.soinside.com 2019 - 2024. All rights reserved.