我以前用过
@app.route('/mypage/<int:myvariable>/')
创建规则,当用户登陆我网站上的不同url时应该发生什么。我已经在运行在我自己的虚拟服务器上的本地机器上完成了此操作。
现在我正在学习发布我的第一个web应用到谷歌应用引擎。我听说我应该使用谷歌云端点而不是路由装饰器。
@endpoints...
我读了一些关于端点的文章,他们列出了端点的一些好处:
- endpoint可以更轻松地为web客户端和移动客户端创建web后端
- 端点使您不必编写包装器来处理与应用程序引擎的通信
即使我读了这篇文章,我也无法理解这是什么意思。我不明白。您能否用非技术术语举例说明使用@endpoints
的优势是什么?我熟悉的替代方案是@app.route
。
Google Cloud Endpoints可以被认为是@app.route
的一个子集。它们旨在解决移动和javascript客户端的API后端问题。它们不是用来服务网页和其他超媒体的。你可以使用你所选择的框架的常规路由方法来为你的应用程序创建一个web服务,但是Google Cloud Endpoints会为你处理很多样板文件。
Google Cloud endpoint有很多限制,所以在提交之前一定要熟悉它们。首先,您不能在自定义域名上托管Google Cloud endpoint。它们只能通过<app_id>.appspot.com/_ah/api/*
Endpoints可以更容易地为web客户端创建web后端移动客户
这意味着你可以创建一个后端,然后iOS, Android和web应用程序(例如通过Javascript)可以使用特定的客户端生成的库执行你的API方法。
如果你正在构建一个后端,你想通过智能手机或通过web浏览器轻松访问,这是很方便的。
使用端点,你可以生成客户端库(例如Android, iOS, Javascript),然后你可以执行你的API方法。你不必担心为此编写一堆额外的代码。端点使您不必编写包装器来处理与App Engine的通信
我的意见:我从来没有使用过云端点来制作web应用程序,但如果你正在为iOS和Android制作移动应用程序,这是非常方便的,因为你可以使用这两个平台访问你的后端。
你可能想要在web应用程序中使用云端点而不是其他东西的一个原因是数据存储。数据存储是云端点存储数据的方式。这是一种NoSQL存储方法,如果你有关系数据库背景,一开始你会觉得有点棘手,但一旦你掌握了,它就很有意义了。