Как вернуть всю таблицу хранилища данных по имени, используя Node.js в облачной функции Google - PullRequest
0 голосов
/ 28 марта 2019

Я хочу получить таблицу (со всеми строками) по имени.Я хочу HTTP-запрос, используя что-то вроде этого на теле {"table": user}.

Попробовал этот код безуспешно:

'use strict';

const {Datastore} = require('@google-cloud/datastore');

// Instantiates a client
const datastore = new Datastore();

exports.getUsers = (req, res) => {

//Get List
const query = this.datastore.createQuery('users');
this.datastore.runQuery(query).then(results => {
  const customers = results[0];
  console.log('User:');
  customers.forEach(customer => {
    const cusKey = customer[this.datastore.KEY];
    console.log(cusKey.id);
    console.log(customer);
  });
})
.catch(err => { console.error('ERROR:', err); });


}

1 Ответ

0 голосов
/ 28 марта 2019

Google Datastore - это база данных NoSQL, которая работает с сущностями, а не с таблицами. Вам нужно загрузить все «записи», которые являются «ключевыми идентификаторами», в Datastore и все их «свойства», то есть «столбцы», которые вы видите в консоли. Но вы хотите загрузить их на основе «доброго» имени, которое является «таблицей», на которую вы ссылаетесь.

Ниже приведено решение о том, как извлечь все идентификаторы ключей и их свойства из хранилища данных с помощью облачной функции HTTP-триггера, работающей в среде Node.js 8.

  1. Создайте облачную функцию Google и выберите триггер для HTTP.
  2. Выберите время выполнения Node.js 8
  3. В index.js замените весь код на этот код GitHub .
  4. В package.json добавить:
    {
      "name": "sample-http",
      "version": "0.0.1",
      "dependencies": {
        "@google-cloud/datastore": "^3.1.2"
      }
    }
  1. Под Функция для выполнения добавить loadDataFromDatastore, так как это имя функции, которую мы хотим выполнить.

ПРИМЕЧАНИЕ. При этом все загруженные записи будут записываться в журналы Stackdriver. облачной функции. Ответом для каждой записи является JSON, поэтому вам придется преобразовать ответ в объект JSON в получить данные, которые вы хотите. Получите идею и измените код соответствующим образом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...