デフォルトでは、Sailsアプリのコントローラーアクションは、config/routes.js
ファイルでルートにバインドされるまで、ユーザーがアクセスできません。ルートをバインドする際には、ユーザーがアクションにアクセスできるURLと、CORSセキュリティ設定などのオプションを指定します。
config/routes.js
ファイルでアクションにルートをバインドするには、HTTP動詞とパス(つまり、ルートアドレス)をキーとして、アクションIDを値(つまり、ルートターゲット)として使用できます。
たとえば、次の手動ルートでは、/make/a/sandwich
へのPOSTリクエストを受信するたびに、アプリがapi/controllers/SandwichController.js
のmake
アクションをトリガーします。
'POST /make/a/sandwich': 'SandwichController.make'
スタンドアロンアクションを使用している場合、つまり、api/controllers/sandwich/make.js
ファイルがある場合、アクションへのパス(api/controllers
からの相対パス)を使用する、より直感的な構文が存在します。
'POST /make/a/sandwich': 'sandwich/make'
ルーティングの詳細については、ルートのドキュメントを参照してください。
Sailsは、コントローラーアクションへのルートを自動的にバインドすることもできます。これにより、/:actionIdentity
へのGET
リクエストがアクションをトリガーします。これはブループリントアクションルーティングと呼ばれ、config/blueprints.js
ファイルでactions
をtrue
に設定することで有効にできます。たとえば、ブループリントアクションルーティングがオンになっている場合、api/controllers/UserController.js
またはapi/controllers/user/signup.js
に保存されたsignup
アクションは、/user/signup
ルートにバインドされます。Sailsの自動ルートバインドの詳細については、ブループリントのドキュメントを参照してください。