【发布时间】:2020-12-21 16:04:15
【问题描述】:
我正在使用 Hapi 和 Node.js 创建一个 REST-API。我正在尝试按照这个家伙 (How to store routes in separate files when using Hapi?) 的方法将我的路线放在单独的文件中。但是使用下面的代码我得到了这个错误:Invalid route options ( ) "value" must be an object。
我的路线有一个user.js:
import { UserController } from "../../controllers/user.js";
const baseUrl = '/api/v1';
const userController = new UserController();
export class UserRoutes {
user() {
return [
{
method: 'GET',
path: baseUrl + '/users',
config: {
handler: (request, response) => {
return userController.find(request, response);
}
}
},
{
method: 'GET',
path: baseUrl + '/user/{user_id}',
config: {
handler: UserController.findById
}
},
];
}
}
和index.js 在同一个文件夹中,这应该将其他路由文件(我目前没有)合并到一个路由数组中:
import { UserRoutes } from './user.js';
export class Routes {
getRoutes() {
return [].concat(UserRoutes);
}
}
并在根index.js 中使用它,如下所示:
import {Routes} from './src/routes/v1/index.js';
let routes = new Routes();
server.route(routes.getRoutes());
我做错了吗?我也尝试了 CommonJS,就像我在上面提到的另一个 Stack Overflow 线程中一样 - 但同样的错误。
【问题讨论】:
标签: javascript node.js rest hapi