Облачные функции Google - доступ к значению ключа - PullRequest
0 голосов
/ 28 апреля 2018

Я пытаюсь вернуть значение из массива значений, которые я получаю, запрашивая хранилище данных.

Результаты [0] имеют следующее содержание: {"имя_продукции": "Маффин", "_продукция ": 3.99}.

Я хотел бы вернуться только через res.send: 3.99

Я пробовал результаты [0] .prod_price или результаты [0] ['prod_price'], я пытался сохранить результаты [0] как переменную и пытался вернуть prod_price, но ничего не работает. Любая помощь приветствуется.

Мой код здесь:

const Datastore = require('@google-cloud/datastore');
const Storage = require('@google-cloud/storage');

// Instantiates a client
const datastore = Datastore();
const storage = new Storage();
exports.getprice = function getprice (req, res) {
  const kind = datastore.createQuery("Dialogflow");
  const filter = kind.filter("prod_name", req.body.queryResult.parameters['bakery_items']);     
  return query = datastore.runQuery(kind)
    .then( (results) => {
      const entities = results[0];
      res.setHeader('Content-Type', 'application/json'); 
      res.send(JSON.stringify({ "fulfillmentText": entities}));
    })
    .catch((err) => {
      console.error(err);
      res.status(500).send(err);
      return Promise.reject(err);
    });

};

1 Ответ

0 голосов
/ 28 апреля 2018

Я понял.

На самом деле я сохранил результаты вместо форсирования results[0] и понял, что в выводе есть дополнительный массив, поэтому для доступа к значению мне пришлось сделать: results[0][0]['prod_price']

Благодаря консоли JavaScript.

...