这是我的function.json:
{
"bindings": [
{
"type": "httpTrigger",
"direction": "in",
"webHookType": "genericJson",
"name": "req"
},
{
"type": "http",
"direction": "out",
"name": "res"
},
{
"type": "documentDB",
"name": "inputDocument",
"databaseName": "MyDb",
"collectionName": "MyCol",
"partitionKey": "main",
"id": "{documentId}",
"connection": "MyDocDbConnStr",
"direction": "in"
}
],
"disabled": false
}
这是我的run.csx:
#r "Newtonsoft.Json"
using System;
using System.Net;
using Newtonsoft.Json;
public static async Task<object> Run(HttpRequestMessage req, TraceWriter log, dynamic inputDocument)
{
return req.CreateResponse(HttpStatusCode.OK, $"doc title is {inputDocument.title}");
}
如果我在config中为我的文档ID定义了一个固定值,则一切正常。
但是,当我想使用动态文档ID并使用{documentId}时,出现此错误:
No binding parameter exists for 'documentId'.
我的帖子数据是:
{
"documentId": "002"
}
如何将DocumentId发送到我的Azure函数并从DocumentDb获取关联项?
参考方案
要在C#绑定表达式中使用自定义参数,必须在触发器输入绑定到的类型上定义这些属性。由于要从输入有效内容绑定到documentId
,因此我们定义了具有相应Input
属性的DocumentId
POCO。这是一个工作示例:
#r "Newtonsoft.Json"
using System;
using System.Net;
using Newtonsoft.Json;
public class Input
{
public string DocumentId { get; set; }
}
public static HttpResponseMessage Run(Input input,
HttpRequestMessage req, dynamic document, TraceWriter log)
{
if (document != null)
{
log.Info($"DocumentId: {document.text}");
return req.CreateResponse(HttpStatusCode.OK);
}
else
{
return req.CreateResponse(HttpStatusCode.NotFound);
}
}
这是对应的function.json:
{
"bindings": [
{
"type": "httpTrigger",
"direction": "in",
"webHookType": "genericJson",
"name": "input"
},
{
"type": "http",
"direction": "out",
"name": "res"
},
{
"type": "documentDB",
"name": "document",
"databaseName": "ItemDb",
"collectionName": "ItemCollection",
"id": "{documentId}",
"connection": "test_DOCUMENTDB",
"direction": "in"
}
]
}
当回复有时是一个对象有时是一个数组时,如何在使用改造时解析JSON回复? - java我正在使用Retrofit来获取JSON答复。这是我实施的一部分-@GET("/api/report/list") Observable<Bills> listBill(@Query("employee_id") String employeeID); 而条例草案类是-public static class…
如何从php中获取datatables jQuery插件的json数据 - php我是PHP的新手,正在尝试使用Datatables jQuery插件。我知道我必须从.php文件中获取数据,然后在数据表中使用它,但是我似乎无法通过ajax将其传递给数据表。我设法从数据库中获取数据,并对其进行json编码,但是后来我不知道如何在我的index.php文件中调用它,并在其中显示它。我究竟做错了什么?这是我的代码:HTML(已编辑): <…
改造正在返回一个空的响应主体 - java我正在尝试使用Retrofit和Gson解析一些JSON。但是,我得到的响应机构是空的。当我尝试从对象中打印信息时,出现NullPointerException。我确保URL正确,并且我也确保POJO也正确。我正在使用jsonschema2pojo来帮助创建POJO类。这是我要解析的JSON{ "?xml": { "@versi…
Azure SQLite插入 - c#我有一个Azure云应用,我正在尝试将用户上传的数据存储在〜/ AppData / mydb.db中的SQLite数据库中。由于存在许多问题,因此我不得不部署System.Data.SQLite,因此我修改了代码以使用此sharp-sqlite库。在调试模式下插入数据时,一切正常。在Azure上部署时,用户提供的数据将插入SQLite数据库。在此过程中不会引…
每个文件合并后添加换行 - python我有很多类似以下内容的JSON文件:例如。1.json{"name": "one", "description": "testDescription...", "comment": ""} test.json{"name"…