SignalR — это интегрированная клиент-серверная библиотека, которая позволяет клиентам браузера и серверным компонентам на базе ASP.NET вести двухсторонние многошаговые разговоры. Другими словами, разговор позволяет без ограничений обмениваться данными одного запроса/ответа без состояния; Она будет продолжаться до тех пор, пока не будет явно закрыта. Разговор происходит по постоянному соединению, что позволяет клиенту отправлять несколько сообщений серверу и отвечать соответствующим ответам, а также позволяет серверу отправлять асинхронные сообщения клиенту. Он похож на AJax и основан на существующих технологиях. сам по себе комплекс. В целом SignalR использует длинный опрос Javascrip{filtering}t для достижения коммуникации на стороне клиента. После появления WebSockets SignalR также поддерживал связь с WebSockets. Конечно, SignalR также использует серверную технологию параллельной обработки задач для повышения масштабируемости сервера. Он ориентирован на всю платформу .NET Framework, не ограничивается хостингом приложений, а также является кроссплатформенным проектом с открытым исходным кодом, поддерживающим Mono 2.10+, что делает его альтернативным вариантом реализации веб-API, но он значительно превосходит веб-API ASP.NET MVC с точки зрения серверной онлайн-обработки и, что важнее, может использоваться на веб-формах. Выше приведён демо-урок:
Сервер, который мы используем для Websocket, — это Signalr, а затем мы используем Owin и размещаем его на консоли!!!
Полное название OWIN — Open Web Interface for .NET.
Если анализировать только по названию, можно получить следующую информацию: OWIN — это открытый веб-интерфейс для платформы .NET.
Так кто же является интерфейсом между веб-интерфейсом? Это интерфейс между веб-приложением и веб-сервером, а OWIN — интерфейс между .NET-приложением и веб-сервером.
Зачем вам такой интерфейс? Потому что. Веб-приложение NET работает на веб-сервере, и веб-приложение .NET должно принимать запрос пользователя через веб-сервер и отправлять ответный контент пользователю через веб-сервер. Без такого интерфейса веб-приложение .NET зависело бы от конкретного веб-сервера, на котором оно работало, например, ASP.NET приложение зависело бы от IIS. С таким интерфейсом ASP.NET приложению нужно опираться только на этот абстрактный интерфейс и не учитывает веб-сервер, который он запускает.
Таким образом, роль OWIN заключается в развязке, введя набор абстрактных интерфейсов. Веб-приложение и веб-сервер NET, вновь демонстрируя важность интерфейсов. В разработке программного обеспечения каждое разделение — это большой шаг вперёд. Мы открыли его через 3 разных браузера, и у нас был URL протокола WebSocket.
Первый браузер: мы регистрируем пользователя через test3 с паролем 123 и входим в систему.
Второй браузер: Мы используем аккаунт администратора для входа.
Третий браузер: нет входа, статус туриста.
Мы обнаружили, что авторизованные аккаунты можно использовать для отправки сообщений, а другие пользователи могут получать сообщения (туристы тоже могут получать сообщения)
Отправьте сообщение и автоматически покажите никнейм другого человека, но не аккаунт автора.
Наконец, приложим исходный код:
Веб-исходный код:
Туристы, если вы хотите увидеть скрытое содержание этого поста, пожалуйста Ответ
Исходный код сервера Signalr:
Туристы, если вы хотите увидеть скрытое содержание этого поста, пожалуйста Ответ
|