2017-08-16 34 views
2

我試圖讓這個路徑點上班Sails.js在路線PARAM

items/images/myimg.jpg 

它的響應404但

items/images/myimg 

items/images/myimg.jpg/ 

我還上班工作嘗試了以下路由器配置

'get /items/images/:imageName': { 
    action: 'items/images/find', 
    skipAssets: true, 
} 

編輯:

如果我設置skipAssets: false那麼該響應將是未經授權的。我有以下ACL

'*': false, 
'items/images/find': 'isLoggedIn', 

在isLoggedIn.js政策req.session是不確定的,即使用戶有一個有效的會話。

如果我設置'items/images/find': true它會工作,但我想訪問控制這條路線。

+0

從[docs](http://sailsjs.com/documentation/concepts/routes/custom-routes#?route-target-選項)'將skipAssets設置爲true if你不想讓路線與其中的點相匹配的網址 –

+0

更新我的問題 – kailniris

回答

0

路線應該設置這樣的:

'get /items/images/:imageName': { 
    action: 'items/images/find', 
    skipAssets: false, 
} 

這個方法應該添加到配置/ session.js:

isSessionDisabled: function (req){ 
    // Allow session for all item image requests. 
    if (req.path.match(/^\/items\/images\//) { 
    return false; 
    } 
    // Otherwise, disable session for all requests that look like assets. 
    return !!req.path.match(req._sails.LOOKS_LIKE_ASSET_RX); 
} 

更多可以閱讀有關此位置: https://github.com/balderdashy/sails/issues/4216#issuecomment-337613995