Попытка отправить данные с помощью FCM Google с помощью TTL

morha13 спросил: 03 февраля 2018 в 10:39 в: javascript

Я пытаюсь отправить данные через FCM Google, срок действия которых истекает через 10 секунд. Я имею в виду, что если пользователь не был подключен к Интернету в течение этих 10 секунд, он не получит его.

Это мой код Javascript для отправки запроса на FCM:

    var http = new XMLHttpRequest();
    http.open("POST", "https://fcm.googleapis.com/fcm/send", true);
    http.onreadystatechange = function() {};
    http.setRequestHeader("Content-type", "application/json");
    http.setRequestHeader("Authorization", "key=*****");
    http.send(JSON.stringify({
        "to": "/topics/all",
        "data": {
            "Title": "Test",
            "areas": "Dan, Ayalon",
        },
        "android": {
          "ttl": "10s" //I've tried also removing the s, and changing the ttl to TTL and time_to_leave
        }
    }));

Проблема в том, что мое приложение Android все еще получает данные даже через 2 минуты после этих 10 секунд. (То, что я сделал здесь, это отключить сеть через мой телефон и вернуть ее на 2 минуты позже).

Я попытался отправить запрос через Firebase Console, и там он работал ... Я не сделал этого, t получите сообщение через минуту. Что я делаю неправильно здесь?

Спасибо!

Обновление: Я думал о другом решении. Возможно, я отправил текущее время вручную, а затем я попрошу клиента проверить, сколько времени прошло? Это звучит как хорошее решение?

Обновление 2. Я пробовал каждый пример Google, указанный в их документации, и ни одна из них не работала. Я также попробовал миллион других способов написать запрос, и все же ничего не получилось. Я начинаю чувствовать, что это может быть ошибка. Я сообщил Google, и теперь я жду их ответа. Я обновлю их ответ.

0 ответов