基本上,无论我做什么,从 gRPC 服务器中的回调返回的 JSON 对象都是空的。
在大多数情况下,我都在遵循本教程,除了我使用 SQLite3 服务器而不是 knex,并且我已经使用了listProducts方法。我还没有尝试过其他产品方法。
在server.js中,我从 SQLite3 数据库获取一些数据,并尝试在回调中返回它(在方法的底部)。我还打印了数据库中的数据,以确认我确实获得了有效数据。
gRPC 服务器.js
function listProducts(call, callback) {
console.log("******** Listed the products *********");
var data = "";
let db = new sqlite3.Database('../data/testDB.db', sqlite3.OPEN_READONLY, (err) => {
if(err){
console.error(err.message);
}
console.log("connected to DB");
});
db.serialize(() => {
db.get('SELECT NAME as name FROM PEEPS', (err, row) => {
if(err){
console.error(err.message);
}
console.log(row.name);
data.name = row.name;
});
});
db.close((err) => {
if(err) {
console.error(err.message);
}
console.log('closed db'); …Run Code Online (Sandbox Code Playgroud)