我正在使用Post
和axios.js
执行方法node.js
并且它正在运行。它执行请求但请求不会将数据保存到数据库。
我的axios.js
我在哪里发出请求:
teste = () => {
axios.post('/api/post', {
firstName: 'Marlon',
lastName: 'Bernardes'
})
.then(function(response) {
console.log(response)
});
}
我的路线post
:
const express = require('express');
const dao = require('../matchs-dao.js');
const router = express.Router();
router.post('/post', async(req, res) => {
const response = await dao.post();
res.send(
response
)
});
module.exports = router;
我的路线等待DAO,看看:
const axios = require('axios');
module.exports = {
post() {
return axios.post('http://localhost:3004/score')
.then(response =>
response.data)
.catch(error => console.log(error))
}
}
Server.js:
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
const rotas = require('./rotas')
const port = 3001;
app.use(bodyParser());
app.get('/', (req, res) => {
res.send("was")
});
app.use('/api', rotas);
app.listen(port, () => {
console.log('Server rodando na porta 3001')
})
路线post
位于/api
..
答案 0 :(得分:0)
根据POST方法中的https://github.com/axios/axios文档,您应该将第二个参数作为请求主体传递。就像你的功能测试一样。
路由器:
const express = require('express');
const dao = require('../matchs-dao.js');
const router = express.Router();
router.post('/post', async(req, res) => {
const response = await dao.post(dataObject);
res.send(response)
});
module.exports = router;
DAO:
const axios = require('axios');
module.exports = {
post(data) {
return axios.post('http://localhost:3004/score', data)
.then(response => response.data)
.catch(error => console.log(error))
}
}