【问题标题】:The Resource submitted could not be validated: Mailchimp Status 400无法验证提交的资源:Mailchimp 状态 400
【发布时间】:2021-07-28 16:30:18
【问题描述】:

我一直在尝试制作一个简单的时事通讯注册表单,在其中我从用户那里获取基本详细信息,并使用 API 将该数据发送到 Mailchimp。 我在发送 POST HTTPS 请求时遇到问题。尝试阅读不同的答案,但无法解决问题。

这是问题的屏幕截图。

代码:

app.post("/", function (req, res) {
    const firstName = req.body.fname;
    const lastName = req.body.lname;
    const email = req.body.email;
    const data = {
        members: [
            {
                email_address : email,
                status: "subscribed",
                merge_fields: {
                    FIRSTNAME: firstName,
                    LASTNAME: lastName
                }
            }
        ]
    };
    var jsonDATA = JSON.stringify(data);

    const url = "https://us1.api.mailchimp.com/3.0/lists/<My_LIST_ID>/members/";  //Removed List Id for now to post Question. 
    const options = {
        method: "POST",
        auth: "pranshukas:MY_API_KEY"  //Removed API_KEY to post the Question 
    }


    const request = https.request(url, options, function (response) {
        response.on("data", function (data) {
            console.log(JSON.parse(data));
        })
    });

    request.write(jsonDATA);
    request.end();
});

我也尝试过使用 POSTMAN,在那里我能够成功地将请求发送到服务器并添加详细信息。但是当我在本地服务器上实现时遇到问题。

请帮帮我,我知道我在发出 HTTPS 请求后犯了一些错误,但卡在了哪里。

【问题讨论】:

    标签: javascript node.js https mailchimp


    【解决方案1】:

    您的电子邮件地址输入似乎有问题,电子邮件地址字段为空白,应填写电子邮件地址。

    另外,我认为您可以从 URL 中删除组名(成员)

    const url = "https://us1.api.mailchimp.com/3.0/lists/<My_LIST_ID>/";
    

    作为建议,我认为您应该添加一条失败路线,以防失败。

    例如: 您可以为成功和失败创建两条不同的路线/页面。
    有了这条路由后,你可以在 const request 匿名函数中添加它。

    if(response.statusCode === 200) {
      res.sendFile(__dirname + "/success.html");
    } else {
      res.sendFile(__dirname + "/failure.html");
    }
    

    【讨论】:

    • 谢谢,更改 URL 解决了问题。此外,添加了路线成功/失败。
    猜你喜欢
    • 2020-08-26
    • 2021-12-30
    • 2019-11-27
    • 2018-06-26
    • 2021-01-20
    • 2017-06-20
    • 1970-01-01
    • 2019-09-18
    • 2016-05-01
    相关资源
    最近更新 更多