使用 nodejs 中的 mailchimp 营销 api v3 响应代码呈现成功/失败页面

Posted

技术标签:

【中文标题】使用 nodejs 中的 mailchimp 营销 api v3 响应代码呈现成功/失败页面【英文标题】:Render success/failure page using mailchimp marketing api v3 response code in nodejs 【发布时间】:2021-09-21 13:00:53 【问题描述】:

如果我的联系人成功添加到 Mailchimp 列表中,我想呈现一个 succes.html 文件,否则呈现一个 failure.html 文件。我正在使用 Mailchimp 营销 API ver:3。

我已尝试过此代码,但无法呈现文件。

async function run() 
        try
            const response = await mailchimp.lists.addListMember(listId, 
                email_address: subscribingUser.email,
                status: "subscribed",
                merge_fields: 
                    FNAME: subscribingUser.firstName,
                    LNAME: subscribingUser.lastName
                
            );
         catch (e)
            if (e.response.statusCode  !== 200)
                console.log(e.response.statusCode);
                res.redirect(__dirname + "/failure.html");
            else
                console.log(e.response.statusCode);
                console.log(`Successfully added contact as an audience member. The contact's id is $response.id.`);
                res.redirect(__dirname + "/success.html");
            
        

    
    run();

我已尝试搜索此问题,但我发现的所有结果都是使用旧版本的 Mailchimp 并使用 HTTPS req/res 而不是使用async function run()。但是我想用mailchimp的async function run()来解决这个问题。

【问题讨论】:

【参考方案1】:

所以我发现我正在以错误的方式进行 try-catch。现在稍微编辑一下代码后,它工作正常。工作代码如下。

  async function run() 
        try
            const response = await mailchimp.lists.addListMember(listId, 
                email_address: subscribingUser.email,
                status: "subscribed",
                merge_fields: 
                    FNAME: subscribingUser.firstName,
                    LNAME: subscribingUser.lastName
                
            );
            console.log(`Successfully added contact as an audience member. The contact's id is $response.id.`);
            res.sendFile(__dirname + "/success.html");
         catch (e)
            console.log(e.status);
            res.sendFile(__dirname + "/failure.html");
        

    
run();

【讨论】:

以上是关于使用 nodejs 中的 mailchimp 营销 api v3 响应代码呈现成功/失败页面的主要内容,如果未能解决你的问题,请参考以下文章

如何通过 Mailchimp 营销 API 用可重复的内容填充活动模板

Mailchimp API“营销许可 ID '' 不存在。”在传递有效身份证件时

如何通过 Node JS 使用自己的库将联系人添加到 Mailchimp 中的列表/受众

如何使用 nodejs 在 mailchimp 订阅者列表中创建标签?

无法使用 Nodejs 和 express API 将收集的电子邮件添加到 Mailchimp 列表

Mailchimp API v3.0 通过 NodeJS http 添加电子邮件到列表