MailChimp:为什么 javascript 的 PUT 方法返回 "Use PUT to insert or update list members"
MailChimp: Why is PUT method with javascript returning "Use PUT to insert or update list members"
我正在尝试使用 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);
});
和
uri = "https://us15.api.mailchimp.com/3.0/lists/" + (id of my list) + "/members/" + (md5 of my user mail);
和
json = {
"email_address": (user mail as a string),
"status": "unsubscribed"
};
但我总是有相同的输出:
I20181204-18:42:12.714(8)? title: 'Member Exists',
I20181204-18:42:12.714(8)? status: 400, I20181204-18:42:12.714(8)? detail: '(user mail adress) is already a list member. Use PUT
to insert or update list members.'
但我已经在使用 PUT 了...如果这是我第一次添加用户,请求可以与 POST 一起使用。但是现在我无法更新我的用户状态...
我的请求或我使用 API 的方式有问题吗?提前致谢。
EDIT 1 -> 尝试使用 GET 无效。请求本身是正确的,但它对我的订户状态没有影响。所以我仍然需要让 PUT 工作。
在“编辑”选项卡中查看 the official doc 后,我找到了答案!
json 需要另一个强制参数,应该如下所示:
json = {
"email_address": (user mail as a string),
"status_if_new": "unsubscribed",
"status": "unsubscribed"
};
我知道这是一个较旧的问题,但我只是想添加一些内容以防对某人有所帮助。
我间歇性地遇到了类似的问题,我的大多数 PUT 请求都按预期工作,有些则没有。
我花了一段时间,但最终我发现我的一些电子邮件地址末尾有空格。
将导致此错误。
在做任何事情之前修剪地址解决了我的问题。
我正在尝试使用 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);
});
和
uri = "https://us15.api.mailchimp.com/3.0/lists/" + (id of my list) + "/members/" + (md5 of my user mail);
和
json = {
"email_address": (user mail as a string),
"status": "unsubscribed"
};
但我总是有相同的输出:
I20181204-18:42:12.714(8)? title: 'Member Exists', I20181204-18:42:12.714(8)? status: 400, I20181204-18:42:12.714(8)? detail: '(user mail adress) is already a list member. Use PUT to insert or update list members.'
但我已经在使用 PUT 了...如果这是我第一次添加用户,请求可以与 POST 一起使用。但是现在我无法更新我的用户状态... 我的请求或我使用 API 的方式有问题吗?提前致谢。
EDIT 1 -> 尝试使用 GET 无效。请求本身是正确的,但它对我的订户状态没有影响。所以我仍然需要让 PUT 工作。
在“编辑”选项卡中查看 the official doc 后,我找到了答案!
json 需要另一个强制参数,应该如下所示:
json = {
"email_address": (user mail as a string),
"status_if_new": "unsubscribed",
"status": "unsubscribed"
};
我知道这是一个较旧的问题,但我只是想添加一些内容以防对某人有所帮助。 我间歇性地遇到了类似的问题,我的大多数 PUT 请求都按预期工作,有些则没有。 我花了一段时间,但最终我发现我的一些电子邮件地址末尾有空格。 将导致此错误。 在做任何事情之前修剪地址解决了我的问题。