我正在写一个Zapier触发器,它将返回一个文件。我知道我的触发器端点不会返回文件的内容,而是返回指向它的指针。
所有示例文档都显示了JavaScript example:
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示例吗?
答案 0 :(得分:2)
如果要将触发器的文件返回给Zapier,则需要返回Zapier可以将该文件作为名为'file'
的记录访问的URL。
如果您希望触发器返回" converted_csv_file.xlsx"可以在您的Web服务器上找到,您的触发器将返回以下JSON:
{
"file": "https://goodgrids.com/converted_spreadsheets/converted_csv_file.xlsx"
}
请注意,网址很重要。 URL的最后一部分将用作文件名。这在提供静态文件时是正常的。但是,如果您的服务动态生成文件,请确保将文件名作为URL的一部分,即使用于访问该文件的实际密钥位于URL中的其他位置。
{
"file": "https://goodgrids.com/converted_spreadsheets/9234659832475982372345876/converted_csv_file.xlsx"
}
对Zapier的建议:请查看读取文件时返回的Content-Disposition
标头,看它是否包含filename
。