首页 > 解决方案 > springboot中如何从fcm获取通知的发送状态?

问题描述

下面是我在 Spring Boot 中的代码。

private void sendNotification(FCMMessageRequestDTO fcmMessageRequestDTO) {
    MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
    headers.set("Authorization", fcmAuthorizationKey);
    headers.add("Content-Type", "application/json");
    RestTemplate restTemplate = new RestTemplate();
    restTemplate.getMessageConverters().add(new MappingJackson2HttpMessageConverter());
    HttpEntity<FCMMessageRequestDTO> request = new HttpEntity<>(fcmMessageRequestDTO, headers);
    restTemplate.postForObject(fcmMessageUrl, request, Object.class);
}

在这里,我如何检查向设备发送通知的状态。

有人可以帮我解决这个问题。

标签: javaspring-bootrestfirebase-cloud-messagingandroid-push-notification

解决方案


FCM 不再向您提供向设备发送通知的状态。它只会在您的 POST 请求的响应中确认 FCM 系统已收到该消息。将您的响应分配给变量并检查输出。

String response = restTemplate.postForObject(fcmMessageUrl, request, Object.class);
System.out.println(response);

此外,我强烈建议您在项目中使用FCM 管理 SDK


推荐阅读