+1

Hướng dẫn sử dụng gem Versionist cho các ứng dụng RESTful APIs

Ta sử dụng gem versionist để quản lý phiên bản khi viết các ứng dụng có API. Một phiên bản của API bao gồm:

  • Namespaced controllers/routes
  • Namespaced presenters
  • Namespaced tests
  • Documentation

Bước 1: Cài đặt gem versionist

Ta chèn thêm dòng sau vào gem file sau đó chạy bundle install.

gem 'versionist'

Bước 2: Cấu hình gem versionist

Versionist cung cấp một phương thức api-version được đặt trong config/routes.rb được dùng để constrain một tập hợp các routes dành riêng cho API. Ví dụ:

api_version(:module => "V1", :header => {:name => "Accept", :value => "application/vnd.mycompany.com; version=1"}) do
  ...
end

Bước 3 Tạo api bằng versionist

Gem versionist cho phép bạn sử dụng rails g để tạo các version mới Mẫu lệnh để tạo new api version:

rails g versionist:new_api_version <version của API> <module namespace của API> [options]

Ví dụ mẫu:

rails g versionist:new_api_version v1 V1 --path=value:v1 --default

Ở đây ta đã tạo API với version là v1, module là V1, option là --path=value:v1 --default Tạo ra một controller dùng để viết api dựa trên versionist Ta sử dụng versionist:new_controller để tạo mới controller dựa trên versionist Mẫu lệnh để tạo:

rails g versionist:new_controller <name> <module namespace>

Ví dụ:

rails g versionist:new_controller abc V1

Ở đây ta đã tạo ra một controller mới tên abc nằm trong V1.

Ngoài ra, ta còn có thể sử dụng gem versionist để tạo tài liệu đi kèm với api. Trong bài viết lần sau mình sẽ giới thiệu cách sử dụng document trong api với gem versionist.


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí