我正在使用此代码获取受众中的成员列表,并将他们的电子邮件地址放入数组中:
var mailchimpMarketing = require("@mailchimp/mailchimp_marketing");
mailchimpMarketing.setConfig({
apiKey: "MY API KEY",
server: "MY SERVER",
});
async function getArrayEmailMembersFromMailchimpListID(listID, offset , count){
const response = await mailchimpMarketing.lists.getListMembersInfo(listID, {offset, count});
const emailsMailchimp = response.members.map(member => member.email_address);
console.log(emailsMailchimp)
return emailsMailchimp;
}
async function getEmailsAccordingSize(listID){
const response = await mailchimpMarketing.lists.getListMembersInfo(listID)
offset = 0
totalItems = await response.total_items
do {
count = 1000
getArrayEmailMembersFromMailchimpListID(listID, offset, count)
offset = offset + 1000
} while (offset < totalItems);
}
getEmailsAccordingSize("MY LIST ID");
我的问题是,当我向观众中的一个非常大的成员列表制作这个时,它会返回给我这个错误:
(node:8014) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: Too Many Requests
(node:8014) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
我假设我只能连续打 10 个电话。那么我怎样才能赚更多呢?我的听众有 37 000 名成员,我必须获取他们所有的电子邮件地址。
我不明白 mailchimp 网站 ( https://mailchimp.com/developer/guides/run-async-requests-with-the-batch-endpoint/ ) 上解释的批次端点。可以分批做吗?如何 ?