前端触发程序:
$.ajax({
url: 'http://192.168.10.52:3000/',
dataType: "jsonp", //由于客户端与远程资源不处于同一服务器,所以需要使用jsonp
success: function(data) {
alert(data);
},
error: function(jqXHR, textStatus, errorThrown) {
alert('error ' + textStatus + " " + errorThrown);
}
});
function callback(str){
alert(str);
}
服务端node程序:
var express = require('express');
var app = express();
mysql = require("mysql");
var connection = mysql.createConnection({
host:"192.168.10.31",
user: "root",
password: "tonggangdasha",
database: "reportdb",
port:'3307'
});
app.get('/', function(req, response){
console.log("request.url:"+req.url);
console.log(req.query.callback);
connection.query('select * from report_phone where show_count = 16;', function (error, rows, fields) {
if(error){
console.log('GetData Error:'+error.message);
return;
}
console.log(JSON.stringify(rows));
response.send("callback("+JSON.stringify(rows)+")");
});
});
app.listen(3000);
上面代码运行成功的前提是已经安装了express模块。
如果是http模块,则无法使用send方法,其中callback是回调函数的函数名。
----------------------------------------------
安装express框架后,找不到express命令,后来找到原因,需要如下命令
npm install -g express-generator