因为这是我关于StackOverflow的第一个问题,所以我希望为您提供足够的详细信息以解决该问题。如果您需要更多信息,请随时询问。
简而言之,我正在尝试为简讯创建一个简单的注册页面,以将订阅者添加到Mailchimp。
在终端/命令行中,我收到此消息:
{类型:“ http://developer.mailchimp.com/documentation/mailchimp/guides/error-glossary/”,标题:“无效资源”,状态:400,detail:“无法验证所提交的资源。有关特定于字段的详细信息,请参见'errors'数组。“,实例:“ 4d92a5b7-20fb-4f1c-be19-fbcd6548e745”,错误:[{栏位:“,消息:“未提供必填字段:email_address”}]}
我的HTML正文看起来像这样:
`
<img class="mb-4" src="images/logo.png" alt="" width="172" height="172">
<h1 class="h3 mb-3 font-weight-normal">Signup to our Newsletter</h1>
<input type="text" name="fName" class="form-control top" placeholder="First Name" required autofocus>
<input type="text" name="lName" class="form-control middle" placeholder="Last Name" required>
<input type="email" name="email" class="form-control bottom" placeholder="Email" required>
<button class="btn btn-lg btn-primary btn-block btn-sign-up" type="submit">Sign me up!</button>
<p class="mt-5 mb-3 text-muted">© PB Plus 2017-2020</p>
`
这是我的Javascript的“ POST”部分:
app.post("/", function(req, res) {
const firstName = req.body.fName;
const lastName = req.body.lName;
const mail = req.body.email;
const data = {
members: [{
email_adress: mail,
status: "subscribed",
merge_fields: {
FNAME: firstName,
LNAME: lastName
}
}]
};
var jsonData = JSON.stringify(data);
const url = "https://us4.api.mailchimp.com/3.0/lists/fae76eccaf";
const options = {
method: "POST",
auth: "xavier1:6cbb8e0a03109b3b2ef74adc0127f986-us4"
}
const request = https.request(url, options, function(response) {
if (response.statusCode === 200) {
res.sendFile(__dirname + "/succes.html");
} else {
res.sendFile(__dirname + "/failure.html");
}
response.on("data", function(data) {
console.log(JSON.parse(data));
})
})
request.write(jsonData);
request.end();
})
[如果有人知道我做错了,请告诉我!提前致谢。
[好,花了很多时间弄清楚出了什么问题后,我键入了email_adress而不是email_address。问题解决了。