如何解决Mailchimp API使用node.js添加对类别的兴趣
我正在创建一个带有多选下拉菜单的订阅表单,用户可以在其中选择他们的兴趣,提交表单时,他们的详细信息将存储在MailChimp受众列表中,而他们选择的兴趣将存储在兴趣组中。
在这种情况下,兴趣类别为“流派”,如下所示:
兴趣爱好如下:
这个想法是能够以复选框的形式(如标准的MailChimp嵌入式形式)或在我的情况下从一组选项中选择兴趣选项,然后将兴趣如下存储在MailChimp中:
按照我在YouTube上观看的教程,到目前为止,我已经成功使用node.js中的API在MailChimp中存储了用户的名字,姓氏和电子邮件地址。但是,我正在努力寻找如何在兴趣类别中添加新兴趣的帮助,因为在node.js中只有很少的指导,尤其是对于像我这样的新手程序员。
标记:
<form action="/signup" method="POST">
<div class="form-group">
<input
type="text"
name="firstName"
id="first-name"
class="form-control form-rounded"
placeholder="First Name"
/>
</div>
<div class="form-group">
<input
type="text"
name="lastName"
id="last-name"
class="form-control form-rounded"
placeholder="Last Name"
/>
</div>
<div class="form-group">
<input
type="email"
name="email"
id="email"
class="form-control form-rounded"
placeholder="Email"
/>
<small id="emailHelp" class="form-text text-muted">We'll never share your email with anyone else.</small>
</div>
<fieldset class="form-group">
<legend>Pick your favourite 3 genres</legend>
<div class="form-group">
<select name="genres" id="genres" class="selectpicker" multiple>
<optgroup data-max-options="3">
<option value="breaks" class="breaks-click">Breaks</option>
<option value="deephouse" class="deep-click">Deep House</option>
<option value="disco" class="disco-click">disco</option>
<option value="drumnbass" class="dnb">Drum & Bass</option>
<option value="dubstep" class="dubstep">dubstep</option>
<option value="electro" class="electro">Electro</option>
<option value="house" class="house">House</option>
<option value="proghouse" class="proghouse">Progressive House</option>
<option value="techhouse" class="techhouse">Tech House</option>
</optgroup>
</select>
</div>
</fieldset>
<button type="submit" class="btn btn-primary" id="quenden">Do it!</button>
</form>
</div>
</section>
</div>
node.js
const express = require('express');
const request = require('request');
const bodyParser = require('body-parser');
const path = require('path');
const app = express();
// Bodyparser Middleware
app.use(bodyParser.urlencoded({extended: true}));
// Static folder
app.use(express.static(path.join(__dirname,'public')));
// Signup Route
app.post('/signup',(req,res) => {
const { firstName,lastName,email } = req.body;
// Make sure fields are filled
if(!firstName || !lastName || !email) {
res.redirect('/fail.html');
return;
}
// Construct req data
const data = {
members: [
{
email_address: email,status: 'subscribed',merge_fields: {
FNAME: firstName,LNAME: lastName,},}
]
};
const postData = JSON.stringify(data);
const options = {
url: 'https://us2.api.mailchimp.com/3.0/lists/{list_id}',method: 'POST',headers: {
Authorization: 'auth {api_key}'
},body: postData
};
request(options,(err,response,body) => {
if(err) {
res.redirect('/fail.html');
} else {
if(response.statusCode === 200) {
res.redirect('/success.html');
} else {
res.redirect('/fail.html');
}
}
});
});
const PORT = process.env.PORT || 5000;
app.listen(PORT,console.log(`Server started on ${PORT}`));
我在node.js中获得了有关MailChimp API的帮助的教程(https://www.youtube.com/watch?v=Gjk25N7WFkI),如上所述,借助该视频,我成功地存储了订户的数据,但是我只需要找出如何使用API来添加兴趣类别,如下面的api文档所述。不幸的是,我正在努力实现它:
我们将不胜感激!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。