Я использую Cloud Function для извлечения строк с сервера Postge SQL в облаке и возврата результата запроса в приложение Flutter.
Вот код в Cloud Function (Node.js):
// Defining pgPool
const pg = require('pg');
var pgPool;
// Open connection to Postgres
if (pgPool == null) {
pgPool = new pg.Pool(pgConfig);
}
exports.getUser = functions
.runWith({ memory: "256MB", timeoutSeconds: 10 })
.https.onCall(async (data, context) => {
const queryString = `select * from users where uid=${data[uid]}`;
return await pgPool.query(queryString);
});
Вот как я вызываю функцию в моем приложении Flutter,
final HttpsCallable getUser = CloudFunctions.instance
.getHttpsCallable(functionName: 'getUser');
final response = await getUser.call({uid: uid});
// Print the result
print('Got data: ${response.data}');
Я получил данные в порядке, но данные выглядят так:
flutter: Got data: {fields: [{format: text, dataTypeSize: -1, columnID: 1, dataTypeModifier: 24, tableID: 16442, name: pid, dataTypeID: 1043}, {format: text, dataTypeSize: -1, columnID: 2, dataTypeModifier: 32, tableID: 16442, name: uid, dataTypeID: 1043}, {format: text, dataTypeSize: -1, columnID: 2, dataTypeModifier: 54, tableID: 16416, name: name, dataTypeID: 1043}, {format: text, dataTypeSize: -1, columnID: 4, dataTypeModifier: 10, tableID: 16442, name: cid, dataTypeID: 1043}, {format: text, dataTypeSize: -1, columnID: 3, dataTypeModifier: 24, tableID: 16442, name: aid, dataTypeID: 1043}, {format: text, dataTypeSize: -1, columnID: 6, dataTypeModifier: 354, tableID: 16442, name: msg, dataTypeID: 1043}, {format: text, dataTypeSize: 8, columnID: 5, dataTypeModifier: -1, tableID: 16442, name: crd, dataTypeID: 1114}, {format: text, dataTypeSize: 8, columnID: 7, dataTypeModifier: -1, tableID: 16442, name: upd, dataTypeID: 1114}, {format: text, dataTypeSize: 4, columnID: 8, dataTypeModifier: -1, t<…>
Так что вместо фактических данных я получил описание каждого столбца.
Вопрос в том, как мне получить фактические строки?
Спасибо