【发布时间】:2011-04-01 19:52:46
【问题描述】:
据我了解,RESTful API 旨在提供一个通信层,用于构建在应用程序之上。能否使用相同的 REST 逻辑构建核心应用程序?
例如,构建 REST 架构,然后基于 REST 实现所有数据库操作(CRUD)。
因此,在 MVC 应用程序中,我们有一些用于实现 REST 服务的控制器,例如:
function Users(user_id){
\\ return user with id = user_id
}
function Articles (article_id){
\\ return article with id = article_id
}
还有一些用于处理演示的控制器。所以如果我们想在首页列出一些文章:
function homepage (){
for ($i=0; $i<10; $i++)
{
\\ request 'http://www.example.com/articles/' . $some_article_id;
}
\\ output to view
}
不确定上述是否有意义,但重点是我们在 MVC 架构中添加了另一层,以便 presentation-logic Controllers 不再通信直接使用模型,但只能通过 REST 控制器:
在 MVC 方法中,数据流是:
演示控制器 ----> 模型 ----> 演示控制器 ----> 视图 em>
在 MVC - REST 方法中,数据流是:
演示控制器 ----> REST控制器 ----> 模型 ----> REST控制器 ----> 演示控制器 ----> 视图
您认为上述方法有什么缺点吗?我相信它会简化编码,但我搜索了很多,没有找到任何进一步的信息。
【问题讨论】:
标签: model-view-controller rest crud