我创建了一个这样的静态路由:
"use strict";
var StaticPlugin = {
register: function (server, options, next) {
server.route([
{
method: 'GET',
path: '/public/{path*}',
config: {
auth: false,
description: 'Static assets',
handler: {
directory: {
path: '../public',
index: false,
listing: false
}
}
}
}
]);
return next();
}
};
StaticPlugin.register.attributes = {
name: 'StaticPlugin',
version: '1.0.0'
};
module.exports = StaticPlugin;
我注册了插件,但是当我尝试加载静态JS文件(将用于提供静态js库)时,我收到404错误。
我想点击的网址是http://localhost:3000/public/javascripts/mylib.js
答案 0 :(得分:3)
在您的配置中,路径是相对于运行进程的目录。如果此插件位于子目录中并且您在主目录中启动服务器,则路径将不正确。使用相对于项目根目录的路径,或将Path.join()
与__dirname
结合使用,例如:
var Path = require('path');
Path.join(__dirname, '../public')
答案 1 :(得分:0)
您必须确保使用插件" Inert"