У меня проблемы с 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?
Еще я попробовал переформатировать ответ zapier на следующий шаг после того, как я сделал запрос GET
, но 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)