sails.js
라우팅
수색…
비고
경로는 들어오는 요청에 직면했을 때 Sails에게 무엇을해야 하는지를 알려주는 규칙입니다.
경로는 config/routes.js
정의됩니다. 경로의 순서가 중요하며 경로가 위에서 아래로 일치합니다. 즉 와일드 카드 라우트와 일치 할 수있는 특정 라우트가있는 경우, 와일드 카드 라우트 위에 특정 라우트를 정의해야합니다.
요청이 애플리케이션에 입력되면 sails.js는 함께 제공된 모든 매개 변수를 가져와 요청 객체의 params
로 사용할 수있게합니다.
경로 대상 객체의 속성은 req.options 객체의 경로 처리기로 전달됩니다. 다음은 경로 처리기의 동작에 영향을 줄 수있는 예약 된 속성입니다.
재산 | 적용 가능한 대상 유형 | 데이터 형식 | 세부 |
---|---|---|---|
skipAssets | 모든 | 부울 | 경로가 URL에 점 (예 : myImage.jpg)을 일치 시키지 않도록 하려면 true 설정하십시오. 이렇게하면 와일드 카드 표기법을 사용하여 정적 자산의 일치하는 URL에서 경로를 유지합니다. URL 슬러그를 만들 때 유용합니다. |
skipRegex | 모든 | 정규 표현식 | 점을 포함하는 모든 URL을 건너 뛰는 것이 너무 관대하거나 다른 조건에 따라 경로 처리기를 건너 뛰려면 skipRegex 를 사용할 수 있습니다. 이 옵션을 사용하면 요청 URL과 일치하는 정규 표현식 또는 정규 표현식을 지정할 수 있습니다. 일치하는 항목이 하나라도 있으면 처리기를 건너 뜁니다. 핸들러를 정규식으로 바인딩하는 구문과 달리 skipRegex 는 문자열이 아닌 실제 RegExp 객체를 필요로합니다. |
지역 주민 | 컨트롤러,보기, 청사진, 응답 | 사전 | 요청을 처리하는 동안 렌더링되는 모든보기로 전달할 기본 로컬 변수를 설정합니다. |
코르 | 모든 | 사전 또는 부울 또는 문자열 | 다른 출발지에서이 경로에 대한 요청을 처리하는 방법을 지정합니다. |
채우다 | 청사진 | 부울 | "find"또는 "findOne"청사진 액션의 결과에 연관된 모델 필드가 채워 져야하는지 여부를 나타냅니다. 기본값은 config/blueprints.js 설정된 값입니다. |
건너 뛰기 , 제한 , 정렬 , 어디에서 | 청사진 | 사전 | "찾기"청사진의 기준을 설정하십시오. |
사용자 정의 RESTful 경로 정의
module.exports.routes = {
'GET /foo': 'FooController.index',
'GET /foo/new': 'FooController.new',
'POST /foo/create': 'FooController.create',
'GET /foo/:id/edit': 'FooController.edit',
'PUT /foo/:id/update': 'FooController.update',
'GET /foo/:id': 'FooController.show',
'DELETE /foo/:id': 'FooController.delete',
};
리디렉션
module.exports.routes = { '/foo': '/bar', 'GET /google': 'http://www.google.com' };
모든보기에 대한 맞춤 변수 정의
module.exports.routes = { // This function will be executed for all http verbs on all urls 'all /*', function (req, res, next) { // Expose the function `fooBar` to all views (via the locals object) res.locals.fooBar = function (arg1) { return 'foobar' + arg1; }; }, };
와일드 카드 경로에서 애셋 건너 뛰기 (점이있는 URL)
module.exports.routes = { 'GET /foo/*': { fn: function(req, res) { res.send("FOO!"); }, skipAssets: true }, };
RegEx를 통한 경로
module.exports.routes = {
// sends matching regex (few patterns) as 'page' param
'r|/foo/([0-9]+)|page': 'FooController.get',
'r|/foo/(.*)|page': 'FooController.get',
'r|/foo/(\\w+)|page': 'FooController.get'
};
URL 슬러그
module.exports.routes = {
'GET /blog/:year/:month/:day/:posttitle/': 'BlogController.showPost',
'GET /blog/:year/:month/:day/': 'BlogController.showDayArchive',
'GET /blog/:year/:month/': 'BlogController.showMonthArchive',
'GET /blog/:year/': 'BlogController.showYearArchive',
};
req.param('year')
, req.param('month')
등을 사용하여 해당 컨트롤러 액션에서 URL에 전달 된 매개 변수에 액세스 할 수 있습니다.
예를 들어 /blog/2016/08/
대한 GET
요청은 req.param('year')
이 2016
이고 req.param('month')
이 08
BlogController.showMonthArchive
컨트롤러 액션을 트리거합니다.
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow