带有NodeJS的Mailchimp API-将成员添加到列表返回我“错误:getaddrinfo ENOTFOUND”

时间:2018-08-28 16:10:27

标签: node.js mailchimp mailchimp-api-v3.0

我正在使用NodeJS中的Mailchimp API,但无法将成员添加到列表中。

这是我的snippet.js

var username = "&&";
var password = "&&-us&&";
var auth = "Basic " + new Buffer(username + ":" + password).toString("base64");
var url = "https://us-&&.api.mailchimp.com/3.0/lists/[listId]/members";
var json = { "email_address":"test@ŧest.com", 
"status":"pending", 
"merge_fields":{ "FNAME" : "newuser", 
                 "LNAME" : "happy" }
            }
request({ url, json: json, method: 'POST', 
          headers: { 'Content-Type': 'application/json', 
                     'Authorization': 'apikey ' + password }
         }, function(err, res, body){
                 if(err){ 
                        return console.log("err:", err) 
                } 
                   console.log("connection succeed"); console.log("res: ", res) 
});

我的控制台返回了我:

  

err:{错误:getaddrinfo已成功获取us-` &&。api.mailchimp.com   us-18.api.mailchimp.com:443

     

在errnoException(dns.js:50:10)

     

在GetAddrInfoReqWrap.onlookup中(作为oncomplete)(dns.js:92:26)

     

代码:“ ENOTFOUND”,

     

errno:“ ENOTFOUND”,

     

系统调用:“ getaddrinfo”,

     

主机名:“ us-&&。api.mailchimp.com”,

     

主持人:“ us-&&。api.mailchimp.com”,

     

端口:443}

我无法弄清楚哪里出了问题,如果有人有暗示,那就太好了。

1 个答案:

答案 0 :(得分:0)

有效网址应类似于https://serverName.api.mailchimp.com/3.0/lists/listID

您需要在网址中替换以下两个内容才能使其正常工作:

  1. serverName-您必须生成自己的特定API密钥,该密钥如下所示:#########################-us2。在这种情况下,您必须在网址中将serverName替换为us2
  2. listID-您必须在mailchimp上生成一个特定的列表ID,从中将获得一个listID,您必须在URL中将其替换,例如#######

因此,最终到达网址应类似于以下https://us2.api.mailchimp.com/3.0/lists/#######