web-services - REST API 的目录结构

标签 web-services api rest data-structures directory

我们应该如何构建 REST API?

示例结构

app/
  v1/
    controllers/
      c1_controller
      c2_controller
    models/
      m1
      m2
    views/
      view1
      view2
  v2/
    controllers/
      c1_controller
      c2_controller
    models/
      m1
      m2
    views/
      view1
      view2

您将如何向该结构添加 CRUD?

CRUD === 操作?

最佳答案

你在问题​​中提到的是一个普通的 MVC 结构。基于 REST 的应用程序的目录结构不需要与 MVC 布局不同。

要使您的应用符合 REST 风格,您需要在 Controller 中添加基于动词的操作。

如果您有一个 UserController,您将有四个操作 - GET、POST、PUT、DELETE

POST v1/user/  --would create a new user
GET v1/user/   --would return all users
PUT v1/user/   --would update all users
DELETE v1/user/   --would delete all users

POST v1/user/123  --would do nothing or throw error
GET v1/user/123   --would return User with ID 123
PUT v1/user/123   --would update User with ID 123
DELETE v1/user/123   --would delete User with ID 123

当您使用 Zend Framework 等框架构建应用时,它会根据方法将您的 URL 重定向到适当的操作。

关于web-services - REST API 的目录结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15510238/

相关文章:

api - 在 Apple Watch 上显示可缩放、可滚动的图像

transactions - 如何使用一些 API 下载 Paypal 交易

sql - Visual Studio 2010 的 SQL 架构和数据比较 - 可以从代码访问吗?

django tsstypie。 order_by 查询集

rest - Grails 3应用程序中使用Spring Security Rest对 “refresh_token”请求的403响应

ruby-on-rails - 带有嵌套参数 cUrl 的多部分 POST

c# - 使用对象数组调用 Web 服务方法

java - JSONException : Value <? java.lang.String 类型的 xml 无法转换为 JSONObject

java - 如何使 jsf @ManagedBean 也成为 @WebService

java - 如何通过 gRPC 发送网络钓鱼防护 API key ?