Getting started · ArangoDB v3.4.0 Documentation此处的教程使用以下代码:
// continued
router.post('/sum', function (req, res) {
const values = req.body.values;
res.send({
result: values.reduce(function (a, b) {
return a + b;
}, 0)
});
})
.body(joi.object({
values: joi.array().items(joi.number().required()).required()
}).required(), 'Values to add together.')
.response(joi.object({
result: joi.number().required()
}).required(), 'Sum of the input values.')
.summary('Add up numbers')
.description('Calculates the sum of an array of number values.');
提供期望参数(两个数字)的URI的示例是什么?
答案 0 :(得分:2)
假设您的服务器实例通过HTTP在localhost:8529
上运行,则数据库为_system
,Foxx服务的安装点为/getting-started
,然后是{{1}的URL }端点为:
/sum
请注意,数据库http://localhost:8529/getting-started/sum
是特殊的:它是默认数据库,这意味着您不必显式指定它。以下网址是等效的:
_system
如果将Foxx服务安装在另一个数据库中,请用实际数据库的名称替换http://localhost:8529/_db/_system/getting-started/sum
。
_system
是POST路由(/sum
),并且期望的主体(HTTP请求的内容/有效负载)由joi模式描述:属性名称为{{1}的JSON对象},并将一个数字数组(一个或多个数字)作为属性值。
使用Curl,您可以像这样查询服务:
router.post(...)
(请求方法values
由Curl推断)
响应是一个带有属性键curl --data "{\"values\":[5,6]}" http://localhost:8529/getting-started/sum
且计算出的数字作为属性值的JSON对象:
-X POST
如果您尝试改为在浏览器中访问URL,它将是一个GET请求(没有有效负载),并失败并显示HTTP错误: 405方法不允许