我正在尝试让这条路线发挥作用
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 策略中,即使用户具有有效 session ,req.session 也未定义。
如果我设置'items/images/find': true
它将起作用,但我想要对此路由的访问控制。
最佳答案
路线应该这样设置:
'get /items/images/:imageName': {
action: 'items/images/find',
skipAssets: false,
}
此方法应添加到config/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
关于Sails.js 路由参数中的点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45706076/