繁体   English   中英

fetch() 对 Express 的 POST 请求生成空正文 {}

[英]fetch() POST request to Express generates empty body {}

我的代码:

  1. 反应.js

     let lsStr = '' lsStr = `https://192.168.0.1/basic/code02/exlup02` if (window.confirm(message)) { fetch(lsStr, { method: "POST", body: JSON.stringify({"Data": "MY DATA"}), headers:{ 'Content-Type':'application/x-www-form-urlencoded' } }).then(function(res){ return res.json(); }).then(data =>console.log(data));

2.server.js

    var express  = require('express')
    var router = express.Router();
    const cors = require('cors')
    var pool = require('../db')  

    router.post('/code02/exlup02', function(req, res, next) {
            console.log('post page')  
            let lsModnm = req.body;

            if(!lsModnm){
              return res.status(400).send({ error:true, message: 'Please provide excel' });
            }else{
               console.log(req.body)  
            }   
    });

目前:console.log(req.body) 日志{}

      return message : Please provide excel!! 

所需:console.log(req.body) 记录“我的数据”

用路由器解决不了?

我该如何解决这个问题?

解决了问题

1.react.js

固定的

    headers:{          
      'Accept': 'application/json',
      'Content-Type': 'application/json'
    }

2.server.js

添加

let bodyParser = require('body-parser');

router.use(bodyParser.json());

控制台日志

post page  
[ { modnm: 'test1', remark: 1, useyn: 're1' },
  { modnm: 'test2', remark: 1, useyn: 're2' },
  { modnm: 'test3', remark: 1, useyn: 're3' },
  { modnm: 'test4', remark: 1, useyn: 're4' },
  { modnm: 'test5', remark: 1, useyn: 're5' } ]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM