最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

即使在使用正文解析中间件时获取空请求正文

运维笔记admin11浏览0评论

即使在使用正文解析中间件时获取空请求正文

即使在使用正文解析中间件时获取空请求正文

我正在尝试实现我的这个小登录系统,并且我有一个表单向我的webpack dev服务器发送一个post请求,后者又将请求代理到我的服务器。

这是处理表单提交并向服务器发送POST请求的函数。

handleSubmit = (e) => {
  e.preventDefault();
  this.props.form.validateFields((err, values) => {
    if (!err) {
      console.log('Received values of form: ', values);
      fetch('/login', {
        method: 'POST',
        body: values
      });
    }
  });
}

当我单击Login时,我确实在控制台中记录了我的值,如

这是处理登录端点的服务器端代码

const app = express();

app.use(bodyParser.urlencoded({ extended: false }));

app.post('/login', (req, res) => {
  console.log('Got user information: \n', req.body);
  res.send('asd');
})

app.use('/graphql', bodyParser.json(), graphqlExpress({ schema }));

app.use('/graphiql', graphiqlExpress({ endpointURL: '/graphql' }));



app.listen(3001, () => {
  console.log(`
    =====
    Server running at http://localhost:3001/
    GraphiQL running at http://localhost:3001/graphiql/
    =====
  `)
})

正如你所看到的,我确实使用了body-parser中间件来解析req.body但是当我尝试登录正文时,我得到一个空对象

有人可以帮我弄清楚我的代码是怎么回事吗?

回答如下:

请求将作为multipart / form-data发送到服务器。 body-parser不支持multipart / form-data。如果您确实要求POST请求采用这种格式,那么请查看multer或强大的内容。

发布评论

评论列表(0)

  1. 暂无评论