如何解决如何将此JavaScript代码添加到Zapier,以发出第三方礼物?
我的电子商务网站需要运行JavaScript代码,以便第三者可以向客户发送礼物。 JavaScript代码可在“谢谢”页面上使用,但是在脚本运行之前我需要延迟几天,因此我尝试使用Zapier进行此操作。但是当在那里使用相同的代码时,Zapier会给出以下错误:
Zapier无法将运行的javascript发送给Code。语法错误:意外令牌
Zapier支持无法帮助,我在Zapier的文档中找不到解决方案。
有人可以帮忙修改下面的短代码,以便Zapier可以运行它吗?
<script src="https://members.thirdparty.com/jsapi/fbDE_Voucher.min.js"></script>
<script>
window.onload = function(){
var fdDE_detail = {
"fbDE_sender":'12345-67890',"fbDE_fullname":"'"+inputData.CustName+"'","fbDE_email":"'"+inputData.Custemail+"'","fbDE_amount":inputData.VoucherValue,"fbDE_business":54321,"fbDE_message":'Thank you for your purchase!'
}
fbDEVoucher(fdDE_detail);
}
</script>
变量CustName,Custemail和VoucherValue来自先前的Zapier步骤。前两个必须在单引号内,第三个是整数(不需要引号)。请参见下图:
感谢您的帮助!谢谢。
解决方法
Zapier的代码在Node.js
中运行,这与您的代码之前运行的基于浏览器的JS不同。
首先,<script>
标签不可用,因为它是HTML。通过fbDE_Voucher.min.js
输入的任何代码都需要分别加载。如果时间不太长,可以将其粘贴到代码窗口中(但是有更好的解决方案,请参见下文)。
也没有window
全局变量,但是您还是不需要它。因此,要使它开始工作,它将类似于:
// doesn't work,fbDEVoucher is undefined
fbDEVoucher({
fbDE_sender: "12345-67890",fbDE_fullname: inputData.CustName,// doesn't need to be re-wrapped in a string
fbDE_email: inputData.CustEmail,fbDE_amount: inputData.VoucherValue,fbDE_business: 54321,fbDE_message: "Thank you for your purchase!",});
假设您的函数已经定义,这就是您所需要的。
这里最适合您的选择是创建自定义Zapier集成。与Code by Zapier
步骤相比,这为您提供了功能更全的JS环境,并且控制能力大大提高。您可以包括上述文件并根据需要调用该函数。这里有关于此的文档:https://platform.zapier.com/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。