RESTful API 是一种常见的网络服务架构,它将 Web 应用程序作为资源驱动的服务呈现给客户端。在 Ruby on Rails 中,我们可以使用一组工具和方法来创建 RESTful API。本文将介绍如何在 Ruby on Rails 中创建 RESTful API。
1. 创建一个新的 Rails 应用
在命令行界面输入以下命令:
rails new my_api --api --database=postgresql
这将创建一个新的 Rails 应用程序。--api
标志会设置应用程序为一个 API 风格的应用程序,--database=postgresql
标志设置数据库类型为 PostgreSQL。
2. 添加资源
在 RESTful API 中,每个资源都应该有一个唯一的 URL。在 Rails 中,我们可以使用 resources
方法来定义资源。让我们创建一个简单的例子:
# config/routes.rb Rails.application.routes.draw do resources :books end
这将生成以下路由:
GET /books GET /books/:id POST /books PATCH/PUT /books/:id DELETE /books/:id
3. 创建控制器
在 Rails 中,每个路由都需要一个控制器动作来处理请求并返回响应。让我们创建一个 BooksController
来处理我们的 books
路由:
-- -------------------- ---- ------- - ----------------------------------- ----- --------------- - --------------------- --- ----- ------ - -------- ------ ----- ------ --- --- ---- ----- - ---------------------- ------ ----- ----- --- --- ------ ----- - --------------------- -- ---------- ------ ----- ------ ------- -------- ---- ------ ----- ------------- ------- --------------------- --- --- --- ------ ----- - ---------------------- -- ------------------------- ------ ----- ----- ---- ------ ----- ------------- ------- --------------------- --- --- --- ------- ----- - ---------------------- ------------- ---- ----------- --- ------- --- ----------- ------------------------------------ -------- ------ --- ---
以上 BooksController
代码实现了 index
、show
、create
、update
和 delete
方法。其中,index
方法返回所有图书的 JSON 格式数据,show
方法返回指定 ID 的图书的 JSON 格式数据,create
方法在数据库中新建图书,update
方法更新指定 ID 的图书的信息,delete
方法删除指定 ID 的图书。
4. 在测试环境中测试 API
使用 Rails 自带的测试库 rails test
运行测试流程,并确保所有的测试通过。以下是一个示例测试:
-- -------------------- ---- ------- - ----------------------------------------- ------- ------------- ----- ------------------- - ------------------------------- ----- -- ----- - ----------- --- ---- ------- --- ------ -- --- --------- --------------- -------- --- ---- ------- ------ ----- -- ------------------------------- -- ---- ---------- ------- - ----- - ------- ------------- ----- ----------- ------ ----------- - - --- --------------- -------- --- ---- ------- ---- ----- -- --- --------------- --------------- -------- --- ---- ------- ------ ----- -- ----- ---------------- ------- - ----- - ------- ------------- ----- ----------- ------ ----------- - - --------------- -------- --- ---- ------- ------- ----- -- ------------------------------- --- -- ------ --------------- --- --------------- ----------- --- ---
5. 部署 API
使用 Heroku、AWS 或其他云服务提供商将 API 部署到生产环境中。确保使用 HTTPS 协议并保护 API 的安全性。
结论
本文介绍了如何在 Ruby on Rails 中创建 RESTful API。使用 Rails 可以轻松地创建 API,并通过使用控制器和路由来管理资源。我们了解了如何在测试环境中测试应用程序,并在进行生产部署之前保护应用程序的安全性。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/671eead42e7021665efa7833