Javascript Nuxt服务器中间件post请求不工作
我在Nuxt js()的文档中看到,我可以使用express扩展服务器中间件。 我用GET请求测试了它,它工作了,但当我使用POST请求时,请求中并没有主体 /api/index.js: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
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()
可以获得数据的“纯文本”表示