Я пытаюсь использовать FCM API для отправки push-уведомлений в приложении для Android. Это хорошо работает, если я использую какой-нибудь HTTP-клиент, например, Insomnia или Postman. Это экран ниже:
и заголовки:
Конечно, вместо xxx
у меня есть регистрационный идентификатор и ключ сервера FCM.
Но мне нужно отправить то же самое из моего C#
кода. И у меня всегда есть BadRequest
. Я не понимаю, почему.
Вот мой код:
var json = JsonConvert.SerializeObject(new
{
to = customer.FcmRegistrationId,
notification = new
{
body = push.PushBody,
title = push.PushTitle,
sound = "default"
}
});
var content = new StringContent(json, Encoding.UTF8, "application/json");
var request = new HttpRequestMessage
{
RequestUri = new Uri("https://fcm.googleapis.com/fcm/send"),
Content = content,
};
request.Headers.TryAddWithoutValidation("Authorization",
"key=" + customer.FCMServerKey);
HttpResponseMessage response;
using (var client = new HttpClient())
{
response = await client.SendAsync(request);
}
response.EnsureSuccessStatusCode();
var responseBody = await response.Content.ReadAsStringAsync();
И, как мне грустно, у меня всегда был такой ответ:
Пожалуйста, помогите мне!