Javascript Node.js在选项上停止

Javascript Node.js在选项上停止,javascript,mysql,node.js,server,Javascript,Mysql,Node.js,Server,我发送了一个POST类型的XMLHttpRequest,当我这样做时,服务器关闭并说 usr/lib/node_modules/mysql/lib/protocol/sequences/Sequence.js:96 this.\u callback.apply(this,arguments); ^ TypeError:此.\u callback.apply不是函数 在Query.Sequence.end(/usr/lib/node_modules/mysql/lib/protocol/seque

我发送了一个POST类型的XMLHttpRequest,当我这样做时,服务器关闭并说

usr/lib/node_modules/mysql/lib/protocol/sequences/Sequence.js:96 this.\u callback.apply(this,arguments); ^ TypeError:此.\u callback.apply不是函数 在Query.Sequence.end(/usr/lib/node_modules/mysql/lib/protocol/sequences/Sequence.js:96:24) 在/usr/lib/node_modules/mysql/lib/protocol/protocol.js:399:18 at Array.forEach(本机) 在/usr/lib/node_modules/mysql/lib/protocol/protocol.js:398:13 at_combinedTickCallback(内部/流程/下一步勾选js:67:7) 在进程中。_tick回调(内部/process/next_tick.js:98:9) 我的服务器代码:

var express = require('express');
var cors = require('cors');
var bodyParser = require('body-parser');
var mysql = require('mysql');

var app = express();


app.use(cors());
app.use( bodyParser.json() );
app.use(bodyParser.urlencoded({extended: true}));



var db_con = mysql.createConnection({
   host : 'localhost',
   user : 'root',
   password : '****',
   database : 'quizz'
});

 app.post('/questions', function (request, response){
  var query = db_con.query("SELECT DISTINCT question_id, description FROM QUESTION WHERE country=?", [request.body.country]," ORDER BY RAND() LIMIT 5", function(err,result ) {
    if (err)
        console.log(err);

    response.json({"questions": result});
    });
 });

 var server = app.listen(8080, function() {
    console.log('Listening at http://%s:%s', server.address().address,    server.address().port);
  });
客户端代码:

function get_questions(){
    var xhr = new XMLHttpRequest();
    xhr.open('POST' , 'http://localhost:8080/questions', true);
    xhr.setRequestHeader('Content-Type','application/json');

    xhr.onload = function(){

        if (!response.error) {
          var response = JSON.parse(xhr.responseText);
          var Score = response;
          var output = Score;

          console.log(Score);
        }

     };
     xhr.send(JSON.stringify( {"country": "Saudi Arabia"} ) );
   }

您的查询应该如下所示:

var query = db_con.query("SELECT DISTINCT question_id, description FROM QUESTION WHERE country=? ORDER BY RAND() LIMIT 5", [request.body.country], function(err,result) {
  if (err)
    console.log(err);

  response.json({"questions": result});
});
第一个参数应该是查询字符串,第二个参数应该是参数,第三个参数应该是回调

下次你遇到类似问题时,首先