微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Mailchimp API 返回“未定义”

如何解决Mailchimp API 返回“未定义”

我正在尝试实现一个 API 来读取用户是否作为我的 mailchimp 帐户中的成员存在,如果不存在,则将此成员添加到列表中。 我使用@marketing/mailchimp_marketing 库作为参考 (https://github.com/mailchimp/mailchimp-marketing-node)。 问题:mailchimp 返回“未定义”。也许我在代码中遗漏了一些东西,我担心 setConfig 没有被读取(不确定)。我非常感谢您的支持。这是使用的代码


const md5 = require('md5');
const mailchimp = require('@mailchimp/mailchimp_marketing');

mailchimp.setConfig({
  apiKey: 'my-api-key',server: 'my-server',});

const listId = '#listcode';

async function checkstatus(subscriber) { //subscriber is an object received from another js file through 
                                         //checkstatus function.
  console.log(subscriber); // returns the object ok
  const status_id = 'subscribed';

  for (let i = 0; i < subscriber.length - 24; i++) {
    const no_email = subscriber[i].email.toLowerCase();
    const subscriberHash = md5(no_email);
    const FNAME_Name = subscriber[i].nome;
    const LNAME_Name = subscriber[i].sobrenome;

    try {
      const response = await mailchimp.lists.getListMember(
        listId,subscriberHash
      );
      console.log(`${response.status}`); // returns 'undefined'
    } catch (e) {
      console.error(e.status); // returns 'undefined'
      console.log('nao cadasTrado');
      addmember(no_email,FNAME_Name,LNAME_Name,status_id);
    }
  }
  alert('Done');
}

export { checkstatus };

async function addmember(no_email,status_id) {
  try {
    const run = async () => {
      const additional = await mailchimp.lists.addListMember(listId,{
        email_address: no_email,status: status_id,merge_fields: {
          FNAME: FNAME_Name,LNAME: LNAME_Name,},});
      console.log(
        `Successfully added contact as an audience member. The contact's id is ${additional.id}.`
      );
    };
    run();
  } catch (e) {
    //console.error(e.status);
    console.log(e.status);
  }
  return;
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。