我正在使用Twilio IVR工作室。我正在使用http请求窗口小部件,并且知道可以调用“ widgets.MY_WIDGET_NAME.parsed。[解析变量名称]”来获取返回的json数据。
就像我让上面的小部件在哈希数组中返回7个作业一样。我只想返回每个人的job_id,而不是其中的其他数据。我怎么用液体做那件事?我知道有循环,但很难。
我可以做类似widgets.MY_WIDGET_NAME.parsed的事情。[解析变量名] [0] .job_id,它返回第一个ID。任何帮助将不胜感激。
"parsed": {
"success": "7 visits found",
"visits": [
{
"job_id": "12344",
"check_in": "",
"check_out": ""
},
{
"job_id": "12344",
"check_in": "",
"check_out": ""
},
{
"job_id": "12344",
"check_in": "",
"check_out": ""
},
{
答案 0 :(得分:1)
这里是Twilio开发人员的传播者。
Twilio Studio支持Liquid模板。您可以iterate a number of ways in Liquid包括使用for
循环。因此,您可以执行以下操作:
{% for job in widgets.MY_WIDGET_NAME.parsed.[parsed variable name] %}
{{ job.job_id }}
{% endfor %}
让我知道是否有帮助。
答案 1 :(得分:0)
此注释可能会有所帮助:Parse JSON into array javascript with Twilio Function
如果没有,则可能是:https://www.twilio.com/docs/studio/widget-library/run-function(在“响应”标题下,是对内容类型的描述)
详细信息:我在Twilio询问了有关NickH的相同问题,并得到了我有权共享的gem:“(Twilio)自动解析返回给Function小部件和HTTP Request小部件的JSON负载!但是,必须JSON对象,而不是数组(不用担心,它仍然可以包含数组)。代替此:
[
{},
{},
{}
]
try returning this:
{
"result":[
{},
{},
{}
]
}
您将以{{widgets.NAME_OF_FUNCTION_WIDGET.parsed.result [index]}}(索引从0开始的整数,对于本示例为0、1和2)访问这些变量。”
hth!