Можно ли написать клиент c ++, использующий WinHttp API, для получения уведомления PU SH с HTTP-сервера? - PullRequest
0 голосов
/ 12 апреля 2020

Я создал образец приложения для чата с использованием. NET Проект Framework WebAPI, используя ссылку: https://www.c-sharpcorner.com/article/push-notification-in-web-application-using-web-api-and-pushcontentstream) введите описание ссылки здесь

Я пытался создать клиентское приложение MF C для связи с этим сервером. Для этого используются функции WinHttp. Но при отправке запроса с использованием API «WinHttpSendRequest» он некоторое время ждет (~ 30 секунд) и возвращает успех. Запрос поступил на сервер чата WebAPI без задержки при вызове API «WinHttpSendRequest». Затем при вызове API «WinHttpReceiveResponse» происходит сбой с ошибкой тайм-аута.

Пример клиентского приложения MF C может связываться с другими серверами, которые могут отправлять HTTP-ответ, отличный от типа содержимого: text / event-stream.

Поэтому я сомневаюсь, возможно ли создать http-клиент на c ++, чтобы подписаться на уведомление PU SH и получать уведомление PU SH (тип контента: text / event-stream)? Моя цель - создать клиент на c ++ с использованием Windows библиотек по умолчанию.

Пожалуйста, дайте ценный совет. Спасибо.

1 Ответ

0 голосов
/ 13 апреля 2020

Используйте API "WinHttpSetTimeouts", чтобы установить время ожидания приема как бесконечное (-1). Затем API «WinHttpSendRequest» будет ожидать получения ответа (уведомление PU SH) от сервера. После получения ответа подпишитесь на уведомление PU SH, снова вызвав WinHttpSendRequest. То есть подписка должна быть сделана после получения каждого PU SH уведомления.

...