使用 Node.js 客户端库向 mailchimp 请求添加查询参数

Adding query param to mailchimp request with Node.js client library

我正在尝试使用 @mailchimp/mailchimp_marketing npm 库列出我对 MailChimp api 的所有兴趣,因为这就是他们在文档中用作 node.js 示例的内容.

Link 到 npm 库: https://www.npmjs.com/package/@mailchimp/mailchimp_marketing

Link 到此特定端点的相关文档:https://mailchimp.com/developer/api/marketing/interests/list-interests-in-category/

现在,我可以通过那里的示例代码获得我的兴趣:


const run = async () => {
  const response = await client.lists.listInterestCategoryInterests(
    "list_id",
    "interest_category_id"
  );
  console.log(response);
};

run();

问题是,默认情况下 MailChimp API 仅 returns 列表中的前 10 个项目,而我需要 15 个。有一种简单的方法可以更改此设置,当然,通过添加查询参数 count=15。但是,我找不到任何方法来使用官方库提供的 listInterestCategoryInterests 方法传递查询参数。

!TL;博士!所以我的问题是: 有谁知道如何通过官方 node.js npm 库将查询参数传递给 mailchimp API,或者我真的不得不求助于完全删除该库,因为它不提供此基本功能?

您需要将参数列为数组中的字符串:

const response = await client.lists.listInterestCategoryInterests({fields:[    "list_id,interest_category_id"]}
  );

注意:可能需要前缀如下:

const response = await mailchimp.reports.getAllCampaignReports({fields:["reports.campaign_title,reports.clicks"]})

结果:

[0] {
[0]   reports: [
[0]     { campaign_title: 'COACT EMAIL CAMPAIGN', clicks: [Object] },
[0]     { campaign_title: '', clicks: [Object] }
[0]   ]
[0] }
const response = await mailchimp.lists.getListMembersInfo(listId,
                {
                    count: 1000
                });

对于来到这里希望了解如何将 QUERY 参数传递到 mailchimp 营销库方法中的每个人:

查询参数取自 opts 对象 - 对象属性必须是驼峰式。

关于 opts 对象的方法参数 - 这取决于方法,您可能需要检查方法的源代码,但可能需要检查第二个或第三个参数。

关于具体方法的问题,应该是这样解决的:

await client.lists.listInterestCategoryInterests(
    "list_id",
    "interest_category_id",
    { count: 15 }
  );