【发布时间】:2015-11-04 20:02:47
【问题描述】:
我的项目将是一种 craiglist,一个用户可以发布公告(日常生活物品、汽车、公寓等)的网站。因此,身份验证、个人资料页面、内容创建、显示待售对象等。
我已经开发了很大一部分后端:我有一个用java开发的三层架构的RESTful API。它与数据库建立链接,为我提供不同的 url 并向我发送相关的 JSON。
网址示例:
http://api.mywebsite.fr/user?userid=1 发回给我:
{"user": {"username": "jdoe1234", "email", "jdoe1234@gmail.com"}}
我有在整个站点上执行的所有操作的 url(公告创建、上次数据更新……所有内容,我已经仔细声明了它们 POST、GET、UPDATE、DELETE 等)。还有 oAuth 来保护 API 免受令牌不允许的查询。
“服务器”方面就这些了,我觉得应该没有问题。
但如果所有操作都由 web 服务管理,我看不出有兴趣为我带来一个大型服务器端框架,如 Symfony/cakePHP、Zend 等,以便在我的不同入口点发出 HTTP 请求,检索 JSON 并填充 HTML。
所以我查看了客户端框架,例如 Angular、Ember 等。起初,它似乎非常适合我的情况:http 请求的可能性,管理成功或错误时要做什么,直接利用生成的 JSON 填充视图等。
我什至无法在 angularjs 和 Ember 之间做出选择,两者都非常相似,但是随着 Angular v2 的发布,我担心 v1 的可维护性(如果我选择 Angular,它将是 v1,因为大多数教程和问题都与 Angular 1.X 相关)。
我不知道我是否通过选择客户端框架做正确的事情,我担心他们'brident'(不确定那个词,对不起)我。另外,它在浏览器中完全实例化,因此用户可以完全更改我提供的所有代码和数据。这对我来说似乎很奇怪。
我想绝对确定我使用的技术,以防我将此应用程序提供给公众使用。我想正确地做事,以避免可维护性或安全性问题。
总结:有了我已经拥有的东西(webservice / api),使用像 Angular 这样的客户端框架是一个好主意,还是应该留在像 Symfony / Zend 等大型服务器端框架上?知道我将自己定位在该平台将被大量使用的环境中(craiglist 可比流量)。
【问题讨论】:
-
为什么要修复没有损坏的东西,或者引入你说不需要的外部依赖项?
-
实际上我只有后端的 API,所以我的问题是知道什么是最适合我利用 API 的。我暂时不使用任何服务器或客户端框架:)
标签: javascript angularjs web-services ember.js frameworks