2
私は、GoogleのFirebaseメッセージングプラットフォームを自分のアプリに結びつけようとしています。私はSpringのRestTemplate REST抽象化を使ってそれを単純化しようとしています。Spring Boot RestTemplate.postForObjectをFirebaseに返すメッセージが返されない
私は現在にしようとしている:FireBasePostオブジェクトがちょうどPOSTメッセージAPIのための必要なフィールドが含まれ
RestTemplate restTemplate = new RestTemplate();
restTemplate.getMessageConverters().add(new GsonHttpMessageConverter());
MultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
headers.add("Authorization", "key=" + Constants.FIREBASE_SERVER_KEY);
headers.add("Content-Type", "application/json");
HttpEntity<FireBasePost> entity = new HttpEntity<>(fbp, headers);
URI uri;
uri = new URI(firebaseApi);
FireBaseResponse fbr = restTemplate.postForObject(uri, entity, FireBaseResponse.class);
:Firebase APIを - ので、私はエンティティがString.classに掲載することにより、作品のリクエストを確認しました応答はアンマーシャリングされたJSONです。
しかし、FireBaseResponseオブジェクトに直接マーシャルへの応答を取得しようとすると、postForObjectの呼び出しがハングし、返されません。
@JsonIgnoreProperties(ignoreUnknown = true)
public class FireBaseResponse {
public Integer multicast_id;
public Integer success;
public Integer failure;
public Integer canonical_ids;
public FireBaseResponse() {}
}
この呼び出しが完了しない理由を理解できません。私はオブジェクトに直接応答することができればと思っています。
私はFireBaseResponse'プロパティ名は、右の規則に従わない '信じています。ラクダの大文字小文字の名前で試してください( 'multicastId'、' canonicalIds'など)。あなたはFirebaseの回答を投稿できますか? –
クライアント側で受け取ったこれらの通知を処理できますか?例えば、funcアプリケーション(_アプリケーション:UIApplication、didReceiveRemoteNotificationのuserInfo:[AnyHashable:Any]、fetchCompletionHandler completionHandler:@エスケープ(UIBackgroundFetchResult) - >()) 'デリゲート? – Dayna