首页 > 解决方案 > Express.js 抛出错误;// 重新抛出非 MySQL 错误

问题描述

我尝试用 express 和 mysql 制作一个 API。我的问题是,当我向我的节点服务器(使用 Insomnia )发送请求时,但每次出现错误时......

node_modules/mysql/lib/protocol/Parser.js:437 抛出错误;// 重新抛出非 MySQL 错误

TypeError:无法使用“in”运算符在 null 中搜索“typeCast”

var express = require('express'); 
var mysql = require('mysql');

var con = mysql.createPool({
    host: "localhost",
    user: "root",
    password: "psword",
    database: "bd"
  });
  

var app = express(); 

var express = require('express'); 

var hostname = 'localhost'; 
var port = 3000; 
 
var app = express(); 

var myRouter = express.Router(); 
 

myRouter.route('/:montant/:sec/:loc/:statut/:type/:anc/:caff')

.get(function(req,res){ 
    var sql= "select * from plateforme";
    con.getConnection(function(sql) {
        con.query(sql, function (result) {
          if (err) {
            console.log("Errore login: " + err);
        }
        else {
          console.log("Result: " + result);
          if(result.length > 0){
            console.log(result[0].IdUtente);
            IdUtente = result[0].IdUtente;
       }
      }
        });
      });
      res.json({montant : req.params.montant ,secteur : req.params.sec, localisation:  req.params.loc ,statut: req.params.statut, 
        type: req.params.type, anciente: req.params.anc ,chiffreAffaire: req.params.caff, methode : req.method});
        
})

我不知道这个错误是来自我的代码还是 lib。我尝试了所有stackoverflow的主题,但没有人解决我的问题。

更新 :

con.getConnection(function(err, connection)  {
        var sql= "select * from plateforme";
        connection.query(sql, function (result) {
          if (err) throw err;
          //console.log("Result: " + result);
          if(result.length > 0){
              console.log(result[0].IdUtente);
              IdUtente = result[0].IdUtente;
       }
      }
        );
      });
con.releaseConnection();


新错误:

抛出错误;// 重新抛出非 MySQL 错误 ^

TypeError:无法读取 null 的属性“长度”

标签: javascriptmysqlnode.jsexpress

解决方案


推荐阅读