[英]How to use fastify to send multiple URL parameters?
我已经使用 fastify 声明了路由,如下所示:
const apiService = require('./apiService');
try {
server.get('/api/status/*', apiService);
} catch (err) {
console.log(err);
process.exit(1);
}
我的 api 服务定义如下:
async function entryFunc(request, response) {
try {
console.log("Params are ");
console.log(request.params);
} catch (err) {
console.log(err);
}
}
我在调用 api http://localhost:3002/api/status/1/2
时关注 output :
Params are:
{ '*': '1/2' }
url 可以有infinite number of parth params
,这就是我在路由中使用wildcard
的原因
我想修改entryFunc(request, response)
以便将值1
和2
存储在一个数组中,当我打印array[0]
时,我应该将值设为1
Fasify 使用find-my-way
作为路由器并支持所有这些功能。
如果您总是有 2 个路径参数,您应该将您的路线定义为:
server.get('/api/status/:one/:two', apiService);
然后你的params
会像:
// /api/status/hello/world
{
"one": "hello",
"two": "world"
}
您可以简单地通过Object.values(request.params) // ["hello", "world"]
或request.params['*'].split('/')
转换为数组
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.