SignalR
En ASP.NET, si on veut une mise à jour de la page on doit rafraichir l'affichage, pour voir les nouvelles données. Évidemment, nous pouvons par "gymnastique" dynamiser le rendu pour produire un affichage en temps réel.
SignalR est un API librement distribué, qui persiste la connexion entre le client et le serveur. Avec cette librairie, le serveur est en mesure d'appeler des fonctions Javascript dans le fureteur du client (Remote procedure calls-RPC) de façon asynchrone. Ceci diffère du fonctionnement habituel du protocole HTTP classique qui est basé sur un modèle de "requête-réponse" où le serveur doit attendre que le client demande l'information pour lui envoyer.
SignalR permet de créer des applications de "chat", l'affichage de résultat sportif en temps réel, des jeux, l'affichage de données en continu. Il est en mesure d'utiliser plusieurs types de protocoles de transport et d'utiliser le plus efficace, selon le fureteur du client. Sa préférence est de communiquer par HTML5 mais si ce n'est pas possible il tentera d'utiliser d'autre processus moins efficace mais adapté au fureteur.
Voici un exemple de "Chat" en quelque ligne seulement :
Fichier HTML Client:
Fichier Serveur:
var chat = $.connection.chat;
chat.name = prompt("What's
your name?", "");
chat.receive = function(name,
message)
{
$("#messages").append(name +
": " + message);
}
$("#send-button").click(function()
{
chat.distribute($("#text-input").val());
});
|
public class Chat : Hub
{
public void Distribute(string message)
{
Clients.receive(Caller.name,
message);
}
}
|
Aucun commentaire:
Publier un commentaire