用vue-resousce发送数据到后台时报错504

发布于 2022-09-06 11:20:04 字数 2262 浏览 15 评论 0

用vue+node写了一个简单的登录注册,实现注册时把数据发送到后台,结果chrome控制台下看到报错504,后台上提示是代理出了问题:[HPM] Error occurred while trying to proxy request /api/user/addUser from localhost:8080 to http://127.0.0.1.8080/api/
user (ENOTFOUND)

如图:
图片描述
注册界面组件的相关js代码如下:

<script>
export default {
  data () {
    return {
      user: {
        username: null,
        password: null,
        tel: null
      }
    }
  },
  methods: {
    submit: function () {
      console.log('username=' + this.user.username + 'password=' + this.user.password + ',tel=' + this.user.tel)
      // 提交数据
      this.$http.post('/api/user/addUser', {
        username: this.user.username,
        password: this.user.password,
        tel: this.user.tel
      }, {}).then((response) => {
        console.log(response)
      })
    }
  }
}
</script>
数据是拿到了而且也输出了就是传不过去,我觉得是post这里路径的问题,只是我不知道怎么写这个路径。。。目录与相关node的代码如下:

图片描述

userApi.js的代码:

var models = require('../db')
var express = require('express')
var router = express.Router()
var mysql = require('mysql')
var $sql = require('../sqlMap')

// 连接数据库
var conn = mysql.createConnection(models.mysql)
conn.connect()

router.post('/addUser', (req, res) => {
  var sql = $sql.user.add
  var params = req.body
  console.log(params)
  conn.query(sql, [params.username.params.password, params.tel], function (err, result) {
    if (err) {
      console.log(err)
    }
    if (result) {
      console.log(result)
    }
  })
})

module.exports = router

index.js的代码如下:

const userApi = require('./api/userApi')
const bodyParser = require('body-parser')
const express = require('express')
const app = express()
app.use(bodyParser.json())
app.use(bodyParser.urlencoded({extended: false}))

// 后端路由
// 将请求都转发至userApi.js中处理
app.use('/api/user', userApi)

app.listen(8080)
console.log('success to listen the port 8080.......') // 已经成功监听8080端口

其他部分代码不重要就没列出来了

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

长不大的小祸害 2022-09-13 11:20:04

少了个res.json()吧

想念有你 2022-09-13 11:20:04

首先这一段应该是要这样写的吧:

app.listen(8080, () => {
    console.log('success to listen the port 8080.......')
})

然后,可以使用 Postman 来调试你的后端接口。

然后,在贴一下你的 webpack 的相关配置?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文