【发布时间】:2017-11-26 05:25:28
【问题描述】:
Mailchimp API (v3.0) 进行了重大更新,许多 jQuery 插件已过时,无法在form.submit() 上订阅POST。
阅读 v3.0 文档后:
Managing subscribers 建议使用以下 JSON 对象格式:
{
"email_address": "urist.mcvankab@freddiesjokes.com",
"status": "subscribed",
"merge_fields": {
"FNAME": "Urist",
"LNAME": "McVankab"
}
}
API 列出资源的以下根端点:
https://<dc>.api.mailchimp.com/3.0/
这是我的 form.submit() 代码,带有 jQuery Ajax POST 请求:
$(document).ready(function(){
var mcForm = $('#mailchimpForm');
var mailchimp = {};
mailchimp.dc='us5';
mailchimp.id='xxxxxxxx';
var url = '//' + mailchimp.dc + '.api.mailchimp.com/3.0/lists/' + mailchimp.id + '/members/';
function beginMailchimpPost(data){
var params = JSON.stringify(data);
$.ajax({
url: url,
method: 'POST',
data: params,
dataType: 'jsonp',
contentType: 'application/json; charset=utf-8',
error: function(res, text){
console.log('Err', res);
},
success: function(res){
console.log('Success', res);
}
});
}
});
这是JSON.stringify(data) 对象:
{"email_address":"email@mail.com","status":"subscribed","merge_fields":{"FNAME":"Name","LNAME":"Last name"}}
我收到以下错误:
GET http://... 401 (Unauthorized)
Err Object {readyState: 4, status: 404, statusText: "error"}
可能出了什么问题?
这是Mailchimp's API v3.0 docs(列表成员集合)的链接。
【问题讨论】:
标签: jquery ajax mailchimp mailchimp-api-v3.0