SignalR es una biblioteca cliente y servidor integrada que permite a los clientes basados en navegador y a los componentes de servidor basados en ASP.NET realizar conversaciones bidireccionales y de varios pasos. En otras palabras, la conversación permite un intercambio único de datos de solicitud/respuesta sin estado sin restricciones; Continuará hasta que se cierre explícitamente. La conversación tiene lugar a través de una conexión permanente, lo que permite al cliente enviar múltiples mensajes al servidor y que este responda en consecuencia, y también permite que el servidor envíe mensajes asincrónicos al cliente. Es similar a AJax y se basa en tecnología existente. en sí mismo es un complejo. En general, SignalR utiliza un sondeo largo de Javascrip{filtering}t para lograr comunicación en el lado del cliente. Tras la llegada de los WebSockets, SignalR también soportaba la comunicación WebSockets. Por supuesto, SignalR también utiliza tecnología de procesamiento paralelo de tareas en el lado del servidor para mejorar la escalabilidad del servidor. Está dirigido a toda la plataforma .NET Framework, no se limita a alojar aplicaciones, y también es un proyecto de código abierto multiplataforma, compatible con Mono 2.10+, lo que lo convierte en una opción alternativa de implementación para APIs web, pero es mucho mejor que la API web de ASP.NET MVC en términos de procesamiento online en el lado del servidor y, lo más importante, puede usarse en formularios web. Arriba está el tutorial de la demo:
El servidor que usamos para Websocket es Signalr, y luego usamos OWIN y lo alojamos en la consola!!!
El nombre completo de OWIN es Interfaz Web Abierta para .NET.
Si analizamos solo a partir del nombre, podemos obtener esta información: OWIN es una interfaz web abierta para la plataforma .NET.
¿Quién es entonces la interfaz entre la interfaz web? Es la interfaz entre la aplicación web y el servidor web, y OWIN es la interfaz entre la aplicación web .NET y el servidor web.
¿Por qué necesitas una interfaz así? Porque. NET se ejecuta en un servidor web, y la aplicación web .NET necesita recibir la solicitud del usuario a través del servidor web y enviar el contenido de respuesta al usuario a través del servidor web. Sin tal interfaz, la aplicación web .NET dependería del servidor web específico que estuviera ejecutando, por ejemplo ASP.NET la aplicación dependería de IIS. Con esta interfaz, ASP.NET aplicación solo necesita depender de esta interfaz abstracta y no le importa el servidor web que esté ejecutando.
Por lo tanto, el papel de OWIN es desacoplar introduciendo un conjunto de interfaces abstractas. NET y servidor web, demostrando una vez más la importancia de las interfaces. En el desarrollo de software, cada desacoplamiento es un gran paso adelante. Lo abrimos con 3 navegadores diferentes y teníamos la URL del protocolo WebSocket.
Primer navegador: Registramos a un usuario con test3 con la contraseña 123 e iniciamos sesión.
El segundo navegador: Usamos la cuenta de administrador para iniciar sesión.
Tercer navegador: Sin inicio de sesión, estatus de turista.
Descubrimos que las cuentas iniciadas pueden usarse para enviar mensajes, y luego otros usuarios pueden recibir mensajes (los turistas también pueden recibir mensajes)
Envía un mensaje y muestra automáticamente el apodo de la otra persona, pero no la cuenta registrada.
Por último, adjuntemos el código fuente:
Código fuente web:
Turistas, si queréis ver el contenido oculto de esta publicación, por favor Respuesta
Código fuente del servidor Signalr:
Turistas, si queréis ver el contenido oculto de esta publicación, por favor Respuesta
|