Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

400
Vistas
¿Cuál es el propósito de mezclar REST con SignalR en lugar de usar solo SignalR?

Antes de leer esto: Esta no es una pregunta sobre "¿Es SignalR mejor que REST?"


Imagine crear un nuevo proyecto de API utilizando .Net 5 o 6. Veo muchos proyectos que proporcionan una API REST para

  • consultar datos a través de GET
  • escribir datos a través de POST

y concentradores SignalR para notificar a los clientes sobre cambios en tiempo real.

Basado en la muestra de documentos para SignalR

https://docs.microsoft.com/en-us/aspnet/core/tutorials/signalr?view=aspnetcore-6.0&tabs=visual-studio#create-a-signalr-hub

 public class ChatHub : Hub { public async Task SendMessage(string user, string message) { await Clients.All.SendAsync("ReceiveMessage", user, message); } }

los clientes pueden invocar acciones en el servidor que podrían escribir datos en una base de datos. Entonces podría reemplazar los puntos finales REST POST con acciones de concentrador.

Basado en la muestra de documentos para la comunicación.

https://docs.microsoft.com/en-us/aspnet/core/signalr/hubs?view=aspnetcore-6.0#send-messages-to-clients

También podría pedir datos, por ejemplo

 public Task CallerRequestedAllMessages() { Message[] allMessages = database.ReadAllMessages(); // pseudo code return Clients.Caller.SendAsync("ReceiveMessages", allMessages); }

y reemplace las solicitudes REST GET .

¿Hay alguna razón técnica para mantener la API REST? Por supuesto, no puedo consumir la API directamente así

curl -X GET --header 'Accept: application/json' 'https://my-api.com/messages'

pero eso no debería importar cuando se crea un cliente "real" que se conecta a los concentradores y parece que las personas están trabajando en paquetes para documentaciones de API de SignalR generadas automáticamente.

¿Hay algo que un proyecto API REST de .Net 6 proporcione o resuelva que un proyecto SignalR no pueda?

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Realmente depende.
Rest es entre cliente y servidor .
SiglaR está entre el cliente y el servidor ADEMÁS (opcionalmente) para otros clientes también.

Otra cosa en Signalr es la capacidad de "empujar" datos al cliente. El resto no puede hacer eso.

Otra consideración es la batería. mantener un enchufe abierto consume más batería. Otra consideración es la fortaleza del servidor en términos de limitaciones de conexiones simultáneas.

Veo el beneficio de usarlos a ambos dependiendo del escenario.

En un entorno de señal de baja recepción, usaría Rest. no SignalR.
En un modo de batería baja, usaría Rest.not SignalR
En una comunicación uno a uno (solo cliente a servidor), usaría Rest, no signalR.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda