Đã có bản cập nhật lớn trên API Mailchimp (v3.0) và nhiều plugin jQuery đã lỗi thời để POST
người đăng ký trên form.submit()
.Mailchimp API V3 Người đăng ký jQuery Ajax POST
Sau khi đọc tài liệu v3.0:
Managing subscribers cho thấy định dạng sau JSON đối tượng:
{
"email_address": "[email protected]",
"status": "subscribed",
"merge_fields": {
"FNAME": "Urist",
"LNAME": "McVankab"
}
}
Và điểm cuối gốc sau cho tài nguyên danh sách API:
https://<dc>.api.mailchimp.com/3.0/
Đây là mã số form.submit()
của tôi với yêu cầu 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);
}
});
}
});
Đây là đối tượng JSON.stringify(data)
:
{"email_address":"[email protected]","status":"subscribed","merge_fields":{"FNAME":"Name","LNAME":"Last name"}}
Và tôi nhận được lỗi sau:
GET http://... 401 (Unauthorized)
Err Object {readyState: 4, status: 404, statusText: "error"}
Điều gì có thể xảy ra?
Đây là liên kết tới Mailchimp's API v3.0 docs (liệt kê bộ sưu tập thành viên).
Cách tốt nhất là http://stackoverflow.com/a/21491824/1821607 –