Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Nuxt服务器中间件post请求不工作_Javascript_Node.js_Express_Vue.js_Nuxt.js - Fatal编程技术网

Javascript Nuxt服务器中间件post请求不工作

Javascript Nuxt服务器中间件post请求不工作,javascript,node.js,express,vue.js,nuxt.js,Javascript,Node.js,Express,Vue.js,Nuxt.js,我在Nuxt js()的文档中看到,我可以使用express扩展服务器中间件。 我用GET请求测试了它,它工作了,但当我使用POST请求时,请求中并没有主体 /api/index.js: const express = require('express'); const bodyParser = require('body-parser'); import Cities from './offline/cities'; const app = express(); app.use(bodyPa

我在Nuxt js()的文档中看到,我可以使用express扩展服务器中间件。 我用GET请求测试了它,它工作了,但当我使用POST请求时,请求中并没有主体

/api/index.js:

const express = require('express');
const bodyParser = require('body-parser');
import Cities from './offline/cities';

const app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));

app.post('/findCity', function (req, res) {
  if (!req.body.input) {
    res.status(400).json();
    return;
  }
  res.status(200).json(Cities.filter(req.body.input, req.body.opt));
});

module.exports = { path: '/api', handler: app };
/nuxt.config.js:

serverMiddleware: [ '~/api/index.js' ],
mixin.js

async findCity(input, opt) {
   return (await this.$axios.post(process.env.DOMAIN_URL + '/api/findCity', { input, opt })).data;
}
在chrome dev tools中,正文被发送:


/api/index.js
文件中,您可以通过以下方式获取请求数据:

req.on('data', (data) => {
    console.log(data.toString())
})
仅使用
数据
即可获得可读的缓冲区对象。添加
.toString()
可以获得数据的“纯文本”表示