Node JS中的多个POST请求问题

问题描述 投票:0回答:1

因此,我一直在构建一个Web应用程序,并且已经实现了POST请求,以请求将一些JSON数据发送到Node JS服务器,但是当我尝试为另一组数据添加第二篇文章时,以HTML格式发送。表单我收到一个Cannot POST / x /页面,但是,如果我对第一组数据使用先前的POST URL,则数据将正确发送。发送多个POST请求是否有问题?我在下面添加了一些代码,因此您可以看到我的正常工作/ foo / JSON数据请求与非正常工作的/ basket / HTML表单请求。提前谢谢。

工作代码:

    app.post("/foo/", function(req, res) {

    var myObject = req.body;

    console.log(myObject);

    for(var i = 0; i < myObject.length; i++){
        var parsed = JSON.parse(myObject[i])
        console.log(parsed.Item.ProductNo);
        console.log(parsed.Item.Quantity);
    }

    var transporter = nodemailer.createTransport({
  service: '*****',
  auth: {
    user: '*****',
    pass: '*****'
  }
});

不工作要求:

    app.post("/basket/"), function(req, res){
    var body = req.body;
    console.log(body);
}

正在工作的foo请求JS:

function sendBasket(){

    fetch('/foo/', {
  method: 'post',
  headers: {
    'Accept': 'application/json, text/plain, */*',
    'Content-Type': 'application/json'
  },
  body: localStorage.getItem('basket')
}).then(res=>res.json())
  .then(res => console.log(res));

    console.log('Sending' + basketList + 'To email');
    //console.log(localStorage.getItem('basket'));
    //$.post("/foo/", localStorage.getItem('basket'), function(temp) {
    // temp === "I am done";    
//});


}

无法使用HTML表单请求:

form#customerForm(method = 'post' action = '/basket/')
            input(class='input' id='email' name='email' type='email' value='')
            ul#listForBasket.listForBasket
            input#butSubmit(type = 'submit' value = 'submit')
javascript node.js json forms post
1个回答
0
投票

[答案:我仍然不太确定如何解决它,但是问题现在已经解决,我相信这是由于HTML表单中的Action属性使用不正确以及JS文件中的结构化提取请求不正确以及结构错误的server.js文件。非常感谢u / fasticious-magician对诊断我的问题提供了很大的帮助。这是我在JS中最后一次正常的第二次提取请求:

© www.soinside.com 2019 - 2024. All rights reserved.