Hapi + Swagger,如何呈现HTML?

时间:2017-08-08 19:51:09

标签: html model-view-controller swagger hapijs

我按照这个文档来创建一个简单的swagger-hapi项目。 swagger.yaml中定义的API工作正常。 https://github.com/swagger-api/swagger-node

我想知道我是否可以使用请求对象呈现HTML?

1 个答案:

答案 0 :(得分:1)

有一个插件hapi-swagger,可以专门用于hapi。不需要yaml文件配置。

如果您想使用hapi进行模板化,请查看visioninert插件。 Vision允许您使用模板引擎呈现您的html服务器端。

把手示例:

const server = new Hapi.Server();
server.connection({ port: 8000 });

const handler = function (request, reply) {

    reply.view('basic/index', {
        title: 'examples/views/handlebars/basic.js | Hapi ' + request.server.version,
        message: 'Hello World!'
    });
};

server.register(require('vision'), (err) => {

    if (err) {
        throw err;
    }

    server.views({
        engines: { html: require('handlebars') },
        path: __dirname + '/templates'
    });

    server.route({ method: 'GET', path: '/', handler: handler });
});