【发布时间】:2017-12-02 05:11:07
【问题描述】:
我能够通过 Twilio Web Hook 将文本消息接收到逻辑应用程序中。 as set up by following these instructions
关于my question here 现在我需要将该文本添加到 Azure 表中。 我添加了 Parse JSON 动作 我应该在内容和架构中添加什么?
我发现,如果我在内容框内单击,系统会提示我从标签中进行选择。我猜Body就是那个。
[更新] 现在我正在尝试直接插入实体,但我无法弄清楚如何在设计器中执行此操作。 如何展开实体文本框以放入 JSON?
[更新2]
我发现我可以通过输入来展开实体文本框。但是如何插入 MessageText?
[更新3]
这是我如何插入实体
我能够在 Azure 存储表中获取一条记录。但是我的短信正文在哪里?
我想我需要从 Body 中提取一个 body 但我不知道如何
[更新4]
显示原始输入显示
{
"host": {
"connection": {
"name": "/subscriptions/somenumbers/resourceGroups/mydomain.com.au/providers/Microsoft.Web/connections/azuretables"
}
},
"method": "post",
"path": "/Tables/TextMessages/entities",
"body": {
"Message": {
"$content-type": "application/x-www-form-urlencoded",
"$content": "VG9Db3VudHJ5PUFVJlRvU3RhdGU9JlNtc01lc3NhZ2VTaWQ9U000MTU4YzU1YmVkNDNjZDFiNWZmMTNiODZiNjIyNzkyNSZOdW1NZWRpYT0wJlRvQ2l0eT0mRnJvbVppcD0mU21zU2lkPVNNNDE1OGM1NWJlZDQzY2QxYjVmZjEzYjg2YjYyMjc5MjUmRnJvbVN0YXRlPSZTbXNTdGF0dXM9cmVjZWl2ZWQmRnJvbUNpdHk9JkJvZHk9VGFrZSsyJkZyb21Db3VudHJ5PUFVJlRvPSUyQjYxNDQ3NDA1NjEzJlRvWmlwPSZOdW1TZWdtZW50cz0xJk1lc3NhZ2VTaWQ9U000MTU4YzU1YmVkNDNjZDFiNWZmMTNiODZiNjIyNzkyNSZBY2NvdW50U2lkPUFDN2FhZTMxM2UwZmRlOGVkZjE5YzhjMGY5NjQ1MTgwNjYmRnJvbT0lMkI2MTQxOTU3NTQxNSZBcGlWZXJzaW9uPTIwMTAtMDQtMDE=",
"$formdata": [
{
"key": "ToCountry",
"value": "AU"
},
{
"key": "ToState",
"value": ""
},
{
"key": "SmsMessageSid",
"value": "SM4158c55bed43cd1b5ff13b86b6227925"
},
{
"key": "NumMedia",
"value": "0"
},
{
"key": "ToCity",
"value": ""
},
{
"key": "FromZip",
"value": ""
},
{
"key": "SmsSid",
"value": "SM4158c55bed43cd1b5ff13b86b6227925"
},
{
"key": "FromState",
"value": ""
},
{
"key": "SmsStatus",
"value": "received"
},
{
"key": "FromCity",
"value": ""
},
{
"key": "Body",
"value": "Take 2"
},
{
"key": "FromCountry",
"value": "AU"
},
{
"key": "To",
"value": "+61447405613"
},
{
"key": "ToZip",
"value": ""
},
{
"key": "NumSegments",
"value": "1"
},
{
"key": "MessageSid",
"value": "SM4158c55bed43cd1b5ff13b86b6227925"
},
{
"key": "AccountSid",
"value": "AC7aae313e0fde8edf19c8c0f964518066"
},
{
"key": "From",
"value": "+61419575415"
},
{
"key": "ApiVersion",
"value": "2010-04-01"
}
]
},
"PartitionKey": "Twilio",
"RowKey": "1d5a06ca-9dbd-4ba9-b514-77904710ffc3"
}
}
[更新5]
我想我需要知道如何从 @triggerBody() 中获取 body 属性
[更新6]
我试过了
"body": {
"Message": "@triggerBody()['Body']",
"PartitionKey": "Twilio",
"RowKey": "@guid()"
}
但这会导致错误
即
InvalidTemplate. Unable to process template language expressions in action 'Insert_Entity' inputs at line '1' and column '1450': 'The template language expression 'triggerBody()['Body']' cannot be evaluated because property 'Body' doesn't exist. Property selection is not supported on content of type 'application/x-www-form-urlencoded'. Please see https://aka.ms/logicexpressions for usage details.'.
[更新7]
我正在更改 HTTPRequest 正文以使用 JSON 架构
"$content-type": "application/json",
而不是
"$content-type": "application/x-www-form-urlencoded",
[后注] 我这样做是因为 Azure 显示了一条警告消息 “请记住在您的请求中包含设置为 application/json 的 Content-Type 标头”但是它似乎可以使用任何一种方式。
[更新8]
我使用时在 Azure 中能够收到消息
“消息”:“@triggerFormDataValue('Body')”
【问题讨论】:
-
您可以点击
Show raw inputs查看错误请求截图中的INPUTS。 -
查看最新更新。我想我需要从“@triggerBody()”中提取正文
-
要获取body值
Take 2吗? -
调查social.msdn.microsoft.com/Forums/en-US/… 我需要的值存储在@triggerBody() 内的body 属性中
标签: twilio azure-table-storage azure-logic-apps