【发布时间】:2017-09-02 15:03:18
【问题描述】:
我在使用 Zapier 并获取一些信息时遇到了一些问题。
我想要做的是获取一个 url,接收一个 json 响应并将整个响应发送回下一步以进行额外的处理。
Zapier 似乎忽略了回调或我编写的任何其他代码,只是向下一步发送“zapier 格式”响应,但不是 json 格式。以下是代码示例:
请求客户
var authHeaders = {
'Authorization': 'Bearer xxxx',
'Content-Type': 'application/json'
}
var options = {
method: 'GET',
headers: authHeaders
};
fetch('www.url.com', options)
.then(function(res) {
return res.json();
})
.then(function (json) {
callback(null, json)
})
.catch(callback);
下拉菜单中的 Zapier 下一步选项:
input.name === harry,bob,sally
input.color === red, blue, green
来自客户的回应
{
cats: [
{name: 'harry', color: 'red'},
{name: 'bob', color: 'blue'},
{name: 'sally', color: 'green'},
{name: 'mary', color: 'green'},
{name: 'george', color: 'green'}
]
}
我在下一个 zapier 步骤中想要的是客户端响应而不是 Zapier 解释,因此我可以对 json 对象进行正常循环和解析。
cats.filter(function(cat){
return cat.color === 'green'
})
我希望所有绿色的猫都返回到下一步。如果所有 cat 属性都在不同的 zapier 字段中,我该怎么做?
我尝试的另一件事是在发出 GET 请求后重新格式化 zapier 下一步响应,但 zapier 不听我的。
fetch('www.url.com', options)
.then(function(res) {
callback(null, {dog: 'yorkie'})
})
.catch(callback);
上面的代码应该只发送我传递的对象{dog: 'yorkie'},但它返回相同的“zapier 格式的猫响应”。
此外,当我没有遵循 zapier 回调格式而只是输入fetch 请求时,它也将“zapier 格式化猫响应”发送回下一步。
fetch('www.url.com', options)
【问题讨论】:
标签: javascript json fetch zapier