8

我目前正在开发一个 Web 应用程序,该应用程序严重依赖移动和桌面客户端向 Web 服务器咨询信息。这可以很好地完成,使 RESTful API 可用于处理此问题。所以我的想法是让应用程序充当“平台”,在幕后处理所有真实的业务逻辑和数据库信息。

我的计划是让平台使用 symfony2 和 OAuth 2.0 身份验证机制,并结合 RESTful Web 服务。

现在我真正的困境出现在网站组件上。理想情况下,我想将该网站视为另一个向该 REST 平台询问信息的客户端,并将其与平台本身完全分开。

为了更清楚一点,假设我们正在使用这种架构创建一个博客,所以会有一个“平台/后端”,它提供一个休息服务来列出文章,例如:/articles/5。这在后端,使用 symfony2/doctrine 意味着应用程序有一个 Article 模型类,这些可以从数据库中请求。一个简单的控制器查询文章编号 5 并以 JSON 格式返回所有信息。

现在这个例子中的网站,可以做简单的事情,也有一个文章实体,直接查询数据库,但我认为如果它可以通过它的 REST api 与平台对话并使用该信息作为实体的“后端”。

所以真正的问题是,有没有使用 symfony2 支持这种设计?实体是否依赖 REST api 进行 CRUD 操作?或者我最好将平台/网站变成一个单一的东西并与所有通用实体共享一个“CoreBundle”?

4

2 回答 2

1

Symfony 中没有任何东西可以阻止你做你想做的事。

在客户端,您可以使用Backbone.jsSpine.js

于 2012-09-27T20:05:07.747 回答
1

看看 FosRestBundle,它让你的 api 更容易创建: https ://github.com/FriendsOfSymfony/FOSRestBundle/blob/master/Resources/doc/index.md

于 2013-12-23T11:11:29.997 回答