Триггер Zapier, который возвращает файл: каков формат вызова z.dehydrateFile? - PullRequest
0 голосов
/ 01 мая 2018

Я пишу триггер Zapier, который будет возвращать файл. Я понимаю, что моя конечная точка триггера не возвращает содержимое файла, а указывает на него.

Вся документация примера показывает пример JavaScript :

var Zap = {
  your_trigger_post_poll: function(bundle) {
    var records = z.JSON.parse(bundle.response.content);
    return _.map(records, function(record) {
      // if you just do url, we'll include any standard authentication headers
      record.file = z.dehydrateFile('https://yoursite.com/files/download/' + record.id);
      return record;
    });
  }
}

Я не пишу свой триггер в JavaScript. Я хотел бы вернуть данные в правильном формате, но не могу найти примеров того, что это должно быть.

Какой вывод z.dehydrateFile? Можете ли вы привести пример JSON?

1 Ответ

0 голосов
/ 03 мая 2018

Если вы хотите вернуть файл из вашего триггера в Zapier, вам нужно вернуть URL, по которому Zapier может получить доступ к этому файлу, в виде записи с именем 'file'.

Если вы хотите, чтобы ваш триггер возвращал "convert_csv_file.xlsx", который можно найти на вашем веб-сервере, ваш триггер будет возвращать следующий JSON:

{
  "file": "https://goodgrids.com/converted_spreadsheets/converted_csv_file.xlsx"
}

Обратите внимание, что URL имеет значение. Последняя часть URL будет использоваться в качестве имени файла. Это нормально при подаче статических файлов. Однако, если ваша служба генерирует файлы на лету, убедитесь, что у вас есть имя файла как часть URL, даже если фактический ключ, используемый для доступа к файлу, находится где-то еще в вашем URL.

{
  "file": "https://goodgrids.com/converted_spreadsheets/9234659832475982372345876/converted_csv_file.xlsx"
}

Предложение Zapier: Пожалуйста, посмотрите на заголовок Content-Disposition, возвращаемый при чтении файла, чтобы увидеть, содержит ли он filename.

...