我正在尝试将来自node.js的sql查询结果发送到我的html。当我在控制台中登录时,它显示了正确的数据,但是一旦我以字符串格式将其添加到“ res.send”中,并尝试使用index.html中的ajax检索它,则得到的对象没有数据,只是我的整个HTML代码。
我尝试将ajax更改为我在网上找到的许多不同内容,但没有任何变化。我尝试将POST更改为GET,更改url(这只会破坏它),仅使用成功而不是完整(导致没有对象通过)。
node.js code excluding server code:
var sql = require('mssql/msnodesqlv8');
var config = {
connectionString: 'Driver=SQL Server;Server=NAME-PC\\SQLEXPRESS;Database=master;Trusted_Connection=true;'
};
sql.connect(config, err => {
new sql.Request().query('SELECT * FROM Companies', (err, result) => {
console.log("Works");
if(err) { // SQL error, but connection OK.
console.log(" Error: "+ err);
JSON.stringify(err);
} else { // All good.
console.dir(result);
JSON.stringify(result);
app.get('/', function data(req, res, next) {
res.send(JSON.stringify(result))
})
};
});
});
sql.on('error', err => { // Connection bad.
console.log("Bad");
console.log(" Error: "+ err);
});
HTML Ajax代码:
<script>
jQuery.support.cors = true;
$.ajax({
type: "POST",
dataType: 'json',
url: '/',
contentType: "application/json; charset=utf-8",
complete: function(data) {
console.log(data);
},
success: function(data){
console.log(data);
}
});
</script>
我最终得到的对象的responseText包含所有HTML代码。知道响应做的不是我的数据吗,我做错了吗?