我使用的是hapi.js,但有一件事对我来说并不清楚。在我使api请求在路径中传递params的情况下,我可以通过在处理程序中调用request.params来获取这些。当我以查询的形式请求应该是什么路径?在第一种情况下,我在路径属性中放置类似/ {param}但在第二种情况下?
答案 0 :(得分:6)
您可以使用request.query
。四个属性保存请求数据:
headers
:原始请求标头(引用request.raw.headers
)。params
:一个对象,其中每个键都是具有匹配值的路径参数名称。payload
:请求有效负载基于路由payload.output
和payload.parse
设置。query
:包含查询参数的对象。您可以在API Reference。
中找到更多信息编辑:以下是一个示例:
var Hapi = require('hapi');
var server = new Hapi.Server(3000);
server.route({
method: 'GET',
path: '/',
handler: function (request, reply) {
console.log(request.query.example);
}
});
server.start(function () {
console.log('Server running at:', server.info.uri);
});
如果您访问http://localhost:3000/?example=hapi
,则会将hapi
记录到控制台。