【问题标题】:Directory structure for REST APIsREST API 的目录结构
【发布时间】:2013-03-19 20:54:18
【问题描述】:

我们应该如何构建我们的 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 === 操作?

【问题讨论】:

    标签: web-services api rest data-structures directory


    【解决方案1】:

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

    要使您的应用程序 RESTful,您需要在控制器中添加基于动词的操作。

    如果您有一个 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 重定向到适当的操作。

    【讨论】:

    • 感谢您的回答。我熟悉 URL/URI 结构和 HTTP 方法,但我正在寻找目录、控制器和操作(方法)的良好结构。结构包括未来的良好版本处理。
    猜你喜欢
    • 1970-01-01
    • 2016-10-21
    • 2019-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多