J'ai un site Web complexe existant construit en utilisant ASP.NET MVC, y compris un backend de base de données, une couche de données, ainsi que la couche Web UI. Reconstruire ce site dans une autre langue n'est pas une option réalisable. Il y a des éléments de l'interface utilisateur sur certaines vues (côté client) qui bénéficieraient de l'interactivité en direct, impliquant à la fois pousser et tirer, donc plutôt que d'implémenter un serveur d'interrogation longue durée ou websocket personnalisé dans asp.net, je cherche exploiter node.js pour Windows et Socket.io.Communication entre Node.Js et l'application ASP.NET MVC
Mon problème est que j'ai besoin d'une communication bidirectionnelle entre les deux applications. Chaque utilisateur ne doit pouvoir recevoir des données qu'une fois qu'il a été autorisé sur le site Web ASP.NET. J'ai donc besoin d'une communication pour cela. Deuxièmement, une fois que certains événements se produisent sur le site Web ASP.NET, je veux immédiatement transmettre ces données au serveur Node, afin qu'elles soient diffusées à des utilisateurs ou à des groupes d'utilisateurs spécifiques. Troisièmement, j'aimerais que toutes les données envoyées au serveur node.js soient transmises au site Web ASP.NET pour traitement, car c'est là que se trouve toute notre logique métier. La seule raison d'ajouter Node.js est d'avoir la possibilité de pousser directement les données vers le client, je ne veux pas y intégrer de logique métier (ou le moins possible).
Je voudrais savoir quelle est la méthode de communication bidirectionnelle la plus rapide entre Node.Js et ASP.NET. La seule bonne option dont je suis conscient est de créer un écouteur spécial sur un port spécifique sur le serveur node.js et de me connecter, mais je me demandais s'il y avait une méthode plus élégante ou plus efficace? Je sais aussi que vous pourriez utiliser une base de données entre les deux mais sûrement cela devrait être interrogé et serait moins efficace? Les deux serveurs seront exécutés sur le même serveur sous un projet Visual Studio.
Un grand merci pour toute aide que vous pouvez fournir.
Pour les nouveaux venus à cette question, il existe une bibliothèque appelée [EdgeJS] (http://tjanczuk.github.io/edge/#/) qui est une alternative aux solutions proposées. La meilleure chose est que cela va dans les deux sens - vous pouvez avoir. NET ou Node comme processus de contrôle. –