iT邦幫忙

2017 iT 邦幫忙鐵人賽
DAY 10
0
Modern Web

認識 Sails.js - 如何建構一個 MVC 網站系列 第 10

認識 Sails.js - 自動路由

  • 分享至 

  • xImage
  •  

路由基本上要做的就是 url 跟 controller 的連接,在一開始我們就一直強調,Sails.js 是一個約定大於配置的框架,所以當然它也有不需配置就能使用的路由設計機制。

Blueprint Routes

又可稱之為 shadow routes,它可以做到不需手動設定,就能是識別你 controller 的 action 要走哪個 router。

設定檔位置在 config/blueprints.js

提供三種模式

RESTful routes

router 會自動識別 model identity,例如你有一個 model 叫 User,則會自動路由 /user 跟 /user/:userId 等路徑,若使用這個功能記得相對應的 policies 防護也要設好。

GET /user -> UserController.find
GET /user/:id -> UserController.findOne
POST /user -> UserController.create
PUT /user/:id -> UserController.update
DELETE /user/:id -> UserController.destroy

sails generate api article
open http://127.0.0.1:1337/article

Shortcut routes

Shortcut routes 模式只接受 Get 格式,可以進行 CRUD 的操作,對於開發階段很有幫助,但在 production 環境應該要被關閉。

GET /user/create?name=joe
GET /user/update/1?name=mike

Action routes

  • 自動根據你的客製化 contoller action 建立 routes,例如 AuthController.js 裡面有一個 action 叫 login,就會自動建立 /auth/login 這個 router。
  • 與 RESTful 和 shortcut routes 差別在於,action routes 並不需要存在 /api/models/Auth.js。

延伸閱讀



上一篇
認識 Sails.js - 手動路由
下一篇
認識 Sails.js - Controllers
系列文
認識 Sails.js - 如何建構一個 MVC 網站17
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言