我正在使用 hapi.js,但有一件事我不清楚。如果我发出 api 请求并在路径中传递参数,我可以通过在处理程序中调用 request.params 来获取这些参数。当我以查询的形式请求时,路径应该是什么?在第一种情况下,我在路径属性中放置类似/{param} 的内容,但在第二种情况下?
最佳答案
您可以使用request.query
。四个属性保存请求数据:
headers
:原始请求 header (引用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
记录到控制台。
关于node.js - 查询请求时路径的结构是怎样的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25477457/