Флаттер HTTP-запрос с данными JSON в функцию Firebase - PullRequest
0 голосов
/ 20 октября 2018

В настоящее время я пытаюсь настроить нашу базу данных Firestore для мобильного приложения Flutter, чтобы получать данные из функции Firebase и сохранять их в базе данных.В настоящее время мы пытаемся передать HTTP-запрос к нашему URI и присоединить к нему некоторые данные JSON.

Моя функция выглядит следующим образом:

exports.testFunction = functions.https.onRequest((request, response) => {
    var data = {
        name: request.body.name,
        age: request.body.age
    };

    var setDoc = db.collection('users').add(data);
    response.json({result: `User ${data.name} at age ${data.age} added.`});
    return;
});

В настоящее время данные можно получить, когдаиспользуя веб-браузер и запрашивая у https://us-central1-[project-name].cloudfunctions.net/testFunction?name=[string]&age=[int].Это также работает в нашем приложении Flutter, используя весь URL-адрес как один аргумент без тела.Однако при попытке запроса cURL из командной строки:

curl -H 'Content-Type: application/json' -d '{"name": "[string]", "age": [int]}' https://us-central1-[project-name].cloudfunctions.net/testFunction

Гипотетически данные должны быть в request.body, но я получаю сообщение об ошибке, в котором говорится, что запрос не может бытьобрабатываются.Что именно здесь происходит не так?

Позже мы хотим реализовать этот запрос в приложении Dart / Flutter, прикрепив объект JSON к телу http.post.Есть ли между этим процессом недостающее звено, которое я пропускаю?

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