Мне нужна функция, которая получает информацию из запроса HTTPS, а затем помещает данные в конкретные коллекции / документы на основе данных.
Для упрощения, если я получаю JSON с данными "Цвет": blue "Я хочу поместить его в документ 1. Но если я получу" Color: green ", я хочу вставить его в документ 2.
[EDIT] Так скажем, у меня есть пользователи коллекции и 2 документа в этомколлекция, DOC1 и DOC2.Должен ли я поместить оператор switch куда-нибудь или как отсортировать данные, чтобы функция знала, где их разместить.
Это не совсем то, что я хочу сделать, но это та же концепция.Мне нужно поместить данные в конкретные документы, основанные на полученном мной файле JSON.
Любая и вся помощь очень ценится.Я застрял на этом в течение нескольких дней.
Я смотрел видео и смотрел документацию googles, но я очень плохо знаком с функциями и не очень понимаю.Функция, которую я использую сейчас, просто принимает данные и помещает их в определенное место.Мне также помогли сделать это, так что я даже не совсем понимаю это.
const functions = require('firebase-functions');
const admin = require('firebase-admin');
const _ = require('lodash');
admin.initializeApp();
const db = admin.firestore();
const express = require('express');
const cors = require('cors');
const app = express();
const bodyParser = require('body-parser');
app.use(bodyParser.json());
app.get('/', async (req, res) => {
let data = req.query.data;
try {
await db.collection('users').doc().set({ userId: data });
} catch(err) { res.send(JSON.stringify(err)) }
res.send('Success');
})
app.post('/', async (req, res) => {
let payload = req.body;
let keys = Object.keys(payload);
let obj = {};
let i = 0;
try {
_.forEach(payload, async data => {
obj[keys[i]] = data;
i++;
})
//
await db.collection('users').doc().set(obj);
} catch(err) { res.send(JSON.stringify(err))}
res.send('Success');
})
exports.writeToFirestore = functions.https.onRequest(app);
Это моя текущая функция, которая просто принимает данные JSON и помещает все это в одно место.