如何完全关闭静态资产?我想我可能会这样做:禁用Sails.js静态资产服务
module.exports = {
// Init custom express middleware
express: {
customMiddleware: function (app) {
app.use(express.static(__dirname + '/some_empty_folder'));
但这对我来说并不好。有没有办法关闭配置中的静态资产服务?
如何完全关闭静态资产?我想我可能会这样做:禁用Sails.js静态资产服务
module.exports = {
// Init custom express middleware
express: {
customMiddleware: function (app) {
app.use(express.static(__dirname + '/some_empty_folder'));
但这对我来说并不好。有没有办法关闭配置中的静态资产服务?
您可以通过从middleware.order在/config/http.js的www
middleware关闭静态资产的服务:
module.exports.http = {
middleware: {
order: [
'startRequestTimer',
'cookieParser',
'session',
'bodyParser',
'handleBodyParserError',
'compress',
'methodOverride',
'poweredBy',
'$custom',
'router',
// 'www',
'favicon',
'404',
'500'
]
}
};
您可以创建没有一个前台应用程序帆与标志--no-前端
sails new [appName] --no-frontend
这将避免产生资产文件夹,然后咕噜任务。
啊,这很酷。但在我的情况下,我正在寻找一种在运行时以编程方式禁用它的方法。我想要有两台同一台服务器,一台服务于API,另一台服务于基于环境变量的资产。我意识到如果API服务器在我的情况下也提供静态资产,我就不会使用它的那部分。这是真正需要关闭API的资产服务器,我可以通过禁用自动路由和基于变量的自定义路由来实现这一点。感谢您的输入!我相信这会帮助别人 – light24bulbs 2015-01-22 13:11:39
您好!你能找到解决这个问题的办法吗? – 2015-01-21 09:44:50
@SlavaFominII不要,除非下面的答案由jorgecasar为你工作。根据他的说法,也许可以在应用程序创建后修改grunt任务,甚至可以通过编程方式打开和关闭资源。也可以在脚本中做一些资产文件夹的符号链接,尽管这并不是很好,因为它不会独立于平台,并且在我认为应用程序关闭时需要某种逆转。 – light24bulbs 2015-01-22 13:15:21
谢谢@ light24bulbs!请参阅主要Sails.js撰稿人@ sgress454的答案。我认为它应该解决问题! – 2015-01-23 09:34:52