【发布时间】:2018-03-26 22:34:51
【问题描述】:
我对 AzureFunction 有一个非常简单的问题。我想发出一个 POST 请求并将其发送回客户端到新创建的对象,它的 id 由 documentDB 创建。 这是我的代码的样子:
function.json
{
"bindings": [
{
"authLevel": "function",
"type": "httpTrigger",
"direction": "in",
"name": "req",
"methods": [ "post" ],
"route": "blocks"
},
{
"type": "http",
"direction": "out",
"name": "res"
},
{
"name": "block",
"type": "documentDB",
"direction": "out",
"databaseName": "digitalnetworkacquisition",
"collectionName": "blocks",
"connection": "CosmosDBConnection"
}
],
"disabled": false
}
index.js
module.exports = function (context, req) {
context.log('Add block to CosmosDB.');
if (req.body) {
let block = req.body;
context.bindings.block = block;
context.res = {
body: context.bindings.block,
status: 201
}
context.done();
return;
}
context.res = {
body: undefined,
status: 404
};
context.done();
};
此代码将我的对象插入数据库,但将我的请求正文发送回客户端,这是正常的,因为以下行:
context.bindings.block = block;
这不是我想要的。我想从数据库中检索插入的对象并将其发送回客户端,以便获得创建的 ID。我不知道该怎么做。有什么建议吗?
非常感谢!
【问题讨论】:
标签: javascript node.js azure azure-functions