为啥我一直使用 mailchimp API 获取 http 状态代码 400
Posted
技术标签:
【中文标题】为啥我一直使用 mailchimp API 获取 http 状态代码 400【英文标题】:Why do I keep getting the http status code 400 with mailchimp API为什么我一直使用 mailchimp API 获取 http 状态代码 400 【发布时间】:2021-09-08 22:39:15 【问题描述】:https://mailchimp.com/developer/marketing/api/lists/batch-subscribe-or-unsubscribe/ 试图以快递方式实现这一点,作为学习使用 API 的实践,但服务器不断返回代码 400,我不知道为什么当我只是尝试使用它向我的 mailchimp 列表中添加电子邮件时。
const express = require("express");
const bodyParser = require("body-parser");
const request = require("request");
app=express();
app.use(bodyParser.urlencoded( extended: true ));
var email;
var firstName;
var lastName;
app.use(express.static("public"));
app.listen(3000,() =>
console.log("Server is up and running on port 3000");
)
app.get("/signup", (req,res) =>
res.sendFile(__dirname+"/signup.html");
);
app.post("/",(req,res) =>
firstName = req.body.firstName;
lastName = req.body.lastName;
email = req.body.userEmail;
console.log(firstName,lastName,email);
);
var data =
members: [
email_address: email,
status: "subscribed"
]
;
var jsonData= JSON.stringify(data);
var options =
url: "https://us6.api.mailchimp.com/3.0/lists/e1c06c3202?skip_merge_validation=<false>&skip_duplicate_check=<true>",
headers:
"Authorization" : "ItsCrux myapikey-us6",
//I know, I have to use my actual key here that's not the problem
body: jsonData,
method: "POST"
;
request(options, (error, response, body) =>
if(error)
console.log(error);
else
console.log(response.statusCode);
);
【问题讨论】:
【参考方案1】:尝试从 URL 中删除 <
和 >
。
将?skip_merge_validation=<false>&skip_duplicate_check=<true>
更改为?skip_merge_validation=false&skip_duplicate_check=true
【讨论】:
以上是关于为啥我一直使用 mailchimp API 获取 http 状态代码 400的主要内容,如果未能解决你的问题,请参考以下文章
为啥我的 app.js 没有检测到 Mailchimp API 的错误?
为啥在连接到 mailchimp API 3.0 时出现 401 错误
为啥在发送 Mailchimp API oauth2 初始请求后我没有在浏览器中被重定向?