Как я могу получить параметры из «get request» в функции firebase? - PullRequest
0 голосов
/ 24 мая 2019

Я знаю, что параметр запроса в базе данных https.onRequest соответствует экспресс-ответу.

Я хочу запустить облачную функцию, используя этот формат (локальное тестирование):

http://localhost:5000/test-2c6e8/us-central1/coins?userid=1

Итак, теперь из облачной функции я просто хочу получить параметр userId.Написанная мною тестовая функция:

exports.coins = functions.https.onRequest((request, response) => 
{
    var db = admin.firestore();
    response.json({query: JSON.stringify(request.query),
                   params: JSON.stringify(request.params),
                   body: JSON.stringify(request.body)});
    response.end();
});

и вот что я получаю:

query   "{}"
params  "{\"0\":\"\"}"
body    "{}"

Я перепробовал несколько вещей без какой-либо удачи.Почему это происходит?

1 Ответ

0 голосов
/ 24 мая 2019

Может быть, вы должны использовать CORS, чтобы получить свои параметры

const functions = require('firebase-functions');
const cors = require('cors')({origin: true});
exports.coins = functions.https.onRequest((request, response) => {
    cors(request, response, () => {
        let userUid = request.query.userid;
        console.log("userUid => ", userUid);
        response.status(200).send(userUid);
    })
})
...