Vir*_*uss 8 javascript request mailchimp meteor mailchimp-api-v3.0
我正在尝试使用 mailchimp API 3.0、Meteor 和 javascript 更新我的订阅者之一的状态。
这是我正在使用的js代码:
request({
uri,
list_id,
method: 'PUT',
headers: {
'Content-Type': 'application/json',
'Authorization': 'apikey (my api key)'
},
json,
}, function(err, res, body) {
if (err) {
return console.log("err:", err);
}
console.log("connection succeed");
console.log("res: ", res.body);
console.log("body: ", body);
});
Run Code Online (Sandbox Code Playgroud)
和
uri = "https://us15.api.mailchimp.com/3.0/lists/" + (id of my list) + "/members/" + (md5 of my user mail);
Run Code Online (Sandbox Code Playgroud)
和
json = {
"email_address": (user mail as a string),
"status": "unsubscribed"
};
Run Code Online (Sandbox Code Playgroud)
但我总是有相同的输出:
I20181204-18:42:12.714(8)?标题:“成员存在”,I20181204-18:42:12.714(8)?状态:400,I20181204-18:42:12.714(8)?详细信息:'(用户邮件地址)已经是列表成员。使用 PUT 插入或更新列表成员。
但我已经在使用 PUT...如果这是我第一次添加用户,则该请求适用于 POST。但现在我无法更新我的用户状态...我的请求或我使用 API 的方式有问题吗?提前致谢。
编辑 1 -> 尝试使用GET不起作用。请求本身是正确的,但它对我的订阅者的状态没有影响。所以我仍然需要让PUT工作。
在查看“编辑”选项卡中的官方文档后,我找到了答案!
json 需要另一个强制参数,应如下所示:
json = {
"email_address": (user mail as a string),
"status_if_new": "unsubscribed",
"status": "unsubscribed"
};
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3938 次 |
最近记录: |