使用 Google Cloud Endpoints 的优势是什么,用非技术术语和示例进行解释?

What are the advantages of using Google Cloud Endpoints, explained in non-technical terms with examples?

我以前用过

@app.route('/mypage/<int:myvariable>/')

为当用户登陆我网站上的不同 url 时应该发生的事情创建规则。我已经在 运行 我自己的虚拟服务器上的本地计算机上完成了此操作。

现在我正在学习将我的第一个网络应用程序发布到 Google App Engine。我听说我应该使用 Google Cloud Endpoints 而不是路由装饰器。

@endpoints...

我读过几篇关于端点的文章,其中列出的端点的一些好处是:

即使我读过这篇文章,我也无法理解这意味着什么。我不明白。您能否通过示例以非技术术语解释使用 @endpoints 与其他替代方法相比的优势是什么?我熟悉的替代方案是 @app.route.

Google Cloud Endpoints 可以被认为是 @app.route 的子集。它们旨在解决移动和 javascript 客户端的 API 后端问题。它们无意为网页和其他超媒体提供服务。您可以使用所选框架的常规路由方法为您的应用程序创建 Web 服务,但 Google Cloud Endpoints 会为您处理大量样板文件。

Google 云端点有很多限制,所以在提交之前一定要熟悉它们。首先,您不能在自定义域名上托管 Google Cloud Endpoints。它们只能通过 <app_id>.appspot.com/_ah/api/*

访问

Endpoints makes it easier to create a web backend for web clients and mobile clients

这意味着您可以创建一个后端,然后 iOS、Android 和 Web 应用程序(例如通过 Javascript)可以执行您的 API 方法与特定的客户端生成的库。

如果您正在构建您希望通过智能手机或网络浏览器轻松访问的后端,这将很方便。

Endpoints free you from having to write wrappers to handle communication with App Engine

使用端点,您可以生成客户端库(例如 Android、iOS、Javascript),然后您可以执行您的 API 方法。您不必担心为此编写一堆额外的代码。

我的意见: 我从未使用 Cloud Endpoints 制作网络应用程序,但如果您正在为 iOS 和 Android 制作移动应用程序,这将非常方便,因为您可以使用这两个平台访问您的后端。

您可能希望将 Cloud Endpoints 用于 Web 应用程序而不是其他东西的一个原因是 Datastore。 Datastore 是 Cloud Endpoints 存储数据的方式。这是一种 NoSQL 存储方法,如果您来自关系数据库背景,一开始可能很难理解,但是一旦您了解了它,它就很有意义了。