【问题标题】:Using App Engine Cloud Endpoints to access ndb datastore使用 App Engine Cloud Endpoints 访问 ndb 数据存储区
【发布时间】:2015-05-13 13:50:29
【问题描述】:

如果这个问题是多余的或构思不周,我很抱歉,但我是 App Engine 的新手,我不确定我正在尝试做的最佳实践。

我有一个 iOS 应用程序,我想使用 http GET 和 POST 请求将和查询放入我的 ndb 数据存储区。

到目前为止,我的 Endpoints API 可以处理硬编码的数据,我可以在我的应用程序上成功地 GET 和 POST 并查看结果。现在我需要做同样的事情,但结果来自数据存储。我正在使用 webapp2 框架来使用 ndb。

所以我的问题基本上是这样的:这是为我的应用存储和接收数据的最佳方式吗?我需要的查询并不复杂,但是我的数据存储区会有大量的读/写。这个问题可能看起来很傻,但我只是要求确保我没有在我的设计中犯下巨大的错误,或者至少要确保没有更好的方法来实现这一点。

总结一下:我正在使用 Endpoints API 来访问移动应用程序的 nbd 数据存储。这是正确的做法吗?如果是这样,最佳做法是什么?

【问题讨论】:

  • 这正是它的用途。您不需要真正的 API 来处理硬编码数据,只需提供静态 JSON 文件即可。具有端点之类的 API 的全部意义在于它从您的数据存储中提供动态数据。

标签: python google-app-engine google-cloud-endpoints webapp2 google-cloud-datastore


【解决方案1】:

是的,这是一个非常合理的方法。

如果您使用的是 Cloud Endpoints 和 NDB,您可能需要查看 Endpoints Proto Datastore API,它可以减少序列化 NDB 模型实体的一些工作量。

就我个人而言,我觉得 API 不是很直观,所以我转而创建自己的 ProtoRPC 消息类(这与 Java 的 Cloud Endpoints 方法完全不同)。

【讨论】:

  • Endpoints Proto Datastore API 看起来与我接下来要做的完全一样。我将不得不四处寻找,看看我是否更愿意在 ProtoRPC 消息类上定义支持 API,但无论哪种方式,这都应该完全符合我的要求。知道这对于我正在尝试做的事情来说是一种不错的方法,这让我感到欣慰。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-07
  • 2013-04-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多