Использование HttpClient для публикации асинхронных сообщений приводит к ошибке при многократном использовании ASP.NET - PullRequest
0 голосов
/ 11 июня 2018

так что в основном я использую это

public static async void postToPushNotifcationAsync(String deviceId, String message, String title)
    {
        var serverKey = "";
        var senderId = "";

        var fcm = new FCMJsonModel();
        var fcmNotification = new FCMNotificationModel();


        fcmNotification.body = message;
        fcmNotification.title = title;
        fcmNotification.sound = "sound.caf";
        fcm.to = deviceId;
        fcm.notification = fcmNotification;

        var json = fcm.ToJSON();

        var content = new StringContent(json);
        content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");

        client.DefaultRequestHeaders.TryAddWithoutValidation("Authorization", "key=" + serverKey);
        client.DefaultRequestHeaders.TryAddWithoutValidation("Sender", "id=" + senderId);
        //client.Timeout = TimeSpan.FromMinutes(2);

        var cts = new CancellationTokenSource();
        cts.CancelAfter(TimeSpan.FromMinutes(1));

        var response = await client.PostAsync("https://fcm.googleapis.com/fcm/send", content, cts.Token);

        var responseString = await response.Content.ReadAsStringAsync();
    }
}

Этот метод в основном публикует сервер push-уведомлений и отправляет сообщение. Я использовал этот метод несколько раз для разных API, но сообщение загромождается и отправляетпервый и не отправляет остальные.Я просто хочу использовать этот метод несколько раз, и я даже не хочу использовать асинхронность, но это не позволит мне.Я не эксперт по программированию на ASP.NET, но хотел бы знать, как это можно исправить.Спасибо за вашу помощь.

...