запрос обмена сообщениями firebase cloud содержит недопустимый аргумент

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

сообщение об ошибке ниже

вызвано: com.гуглить.прикладной программный интерфейс.клиент.http.HttpResponseException: 400 Неправильный Запрос { "ошибка": { "код": 400, "message": "запрос содержит недопустимый аргумент.", "ошибки": [ { "message": "запрос содержит недопустимый аргумент.", "домен": "глобальный", "причина": "badRequest" } ], "status": "INVALID_ARGUMENT" } }

позвольте мне поместить мою конфигурацию администратора здесь..

FileInputStream serviceAccount = new FileInputStream("My service accout file.json");

FirebaseOptions options = new FirebaseOptions.Builder().setCredentials(GoogleCredentials.fromStream(serviceAccount))
                    .setDatabaseUrl("https://deliveryeat-1aa42.firebaseio.com").build();

FirebaseApp.initializeApp(options);

код отправки сообщения ниже

// This registration token comes from the client FCM SDKs.
String registrationToken = "YOUR_REGISTRATION_TOKEN";

// See documentation on defining a message payload.
Message message = Message.builder().putData("score", "850").putData("time", "2:45").setToken(registrationToken).build();

// Send a message to the device corresponding to the provided
// registration token.
String response = FirebaseMessaging.getInstance().sendAsync(message).get();
// Response is a message ID string.
System.out.println("Successfully sent message: " + response);

зависимости maven, которые я использую, следующие

<dependency>
    <groupId>com.google.firebase</groupId>
    <artifactId>firebase-admin</artifactId>
    <version>5.9.0</version>
</dependency>

так может кто-нибудь помочь мне в этом? Что я делаю не так?

2 ответов


Я подозреваю, что ваш registrationToken имеет недопустимый формат. Должно быть 152 символа.

чтобы подтвердить это, попробуйте создать сообщение с помощью setTopic("тест") вместо setToken(registrationToken).


одной из возможных причин этого является то, что клиент и сервер подключены к различным проектам военнослужащих. Название проекта появляется в google-сервисах.файл json на клиенте и в учетных данных json на сервере.

Firebase FCM: недопустимый-аргумент