【发布时间】:2020-08-07 21:31:15
【问题描述】:
我正在尝试通过 hapi 从 redis 发送 get 的结果,但我一直收到 500。如何将 redis get 的结果发送给客户端。代码和错误如下。
错误
调试:内部、实现、错误
错误:处理程序方法没有返回值、承诺或抛出错误
{
statusCode: 500,
error: "Internal Server Error",
message: "An internal server error occurred"
}
代码
'use strict';
const Hapi = require('@hapi/hapi');
const redis = require("redis");
const client = redis.createClient();
client.on("error", function (error) {
console.error(error);
});
const init = async () => {
const server = Hapi.server({
port: 3001,
host: 'localhost'
});
server.route({
method: 'GET',
path: '/api/v1/key/{id}',
handler: (request, h) => {
client.get(request.params.id, (err, res) => {
if (err) {
h.response(err)
} else {
h.response(res)
}
});
}
});
await server.start();
console.log('Server running on %s', server.info.uri);
};
process.on('unhandledRejection', (err) => {
console.log(err);
process.exit(1);
});
init();
【问题讨论】: