首页 > 解决方案 > 我收到 PROTOCOL_ENQUEUE_AFTER_FATAL_ERROR

问题描述

即使我可以使用 Workbench 访问 MySQL,我也无法使用 nodejs 连接到 MYSQL。我收到 PROTOCOL_ENQUEUE_AFTER_FATAL_ERROR 错误,我无法确定此处的代码有什么问题。我应该怎么做?提前谢谢了。

const express = require('express')
const cors = require('cors')
const mysql = require('mysql')

const app = express()


const SELECT_ALL_PRODUCT_QUERY = 'SELECT * FROM products';

const connection = mysql.createConnection({
    host:'localhost',
    user:'root',
    password:'password',
    database:'reactdb'
})


app.use(cors())

app.get('/', (req, res) => {
    res.send('hello world from the product server')
})

app.get('/productlist', (req, res) => {
  connection.query(SELECT_ALL_PRODUCT_QUERY, (err, results) => {
      if(err){
          return res.send(err)
      }
      else {
          return res.json({
              data: results
          })
      }
  })
})

app.listen(4000, () => {
    console.log('Product server is listening to port 4000')
})

标签: mysqlnode.jsexpress

解决方案


我设法通过创建一个新的 MySQL 用户而不是使用 root 用户来解决连接错误。谢谢


推荐阅读