我一直在搜索,其他人的问题都没有与我的问题直接相符。
我正在使用一个简单的GET请求来拉取MySQL表,但它只是在客户端返回一些奇怪的对象。我在服务器端console.log(行),它返回:
[ RowDataPacket {
id: 1,
keyword: 'cannabis',
screenName: 'randeemckee',
numFollowers: 1526,
location: 'ÜT: 29.983699,-95.336676',
count: 1,
firstDate: Wed Apr 12 2017 19:19:34 GMT+0000 (UTC),
lastDate: Wed Apr 12 2017 19:19:34 GMT+0000 (UTC) } ]
这是我的客户端代码:
var dataApp = angular.module('dataApp', [])
.controller('databaseControl', dataControl);
dataControl.$inject = ['$http'];
function dataControl($http){
var dCtrl = this;
dCtrl.getData = function() {
$http.get('/showdata')
.then(function(success){
console.log('Retreived database info!');
console.log(success.data);
}, function(error){
console.log('Error retrieving data: ' + error);
});
};
};
这是我的服务器端代码:
app.get('/showdata', (req, res) => {
connection.query('SELECT * FROM twitterInfo', function(err, rows) {
if (err) {
console.log(err);
res.send(err);
} else {
console.log(rows);
res.send(req.body);
};
});
});
以下是'success.data'在客户端的样子:
Object {}
__proto__:Object
constructor:function Object()
hasOwnProperty:function hasOwnProperty()
isPrototypeOf: function isPrototypeOf()
propertyIsEnumerable:function propertyIsEnumerable()
toLocaleString:function toLocaleString()
toString:function toString()
valueOf:function valueOf()
__defineGetter__:function __defineGetter__()
__defineSetter__:function __defineSetter__()
__lookupGetter__:function __lookupGetter__()
__lookupSetter__:function __lookupSetter__()
get __proto__:function __proto__()
set __proto__:function __proto__()
这看起来不可辨认,我只是想从RowDataPacket中提取数据并显示它......
答案 0 :(得分:0)
是时候回答我自己的问题......
它应该是res.send(rows)NOT res.send(req.body); 我不知道为什么,但是它有效。