3

MVC .NET で SSE を使用したフィード アプリケーションを作成したいと考えています。Web を見ていましたが、MVC で SSE を実装する例や方法が見つかりません。ビューが2番目のビューを呼び出すコントローラーを呼び出し、この2番目のビューが最初のビューにプッシュする、非常に汚いソリューションを開発しました。誰かが助けてくれることを願っています。ありがとう。

4

3 に答える 3

1

ASP.NET WebApi がオプションの場合、私のライブラリ ServerSentEvents4Net をチェックアウトできます。コードはGithubにアップされており、 Nugetでも入手できます。

于 2013-01-20T04:27:06.460 に答える
1

SignalRを見てください。セットアップして実行するのは非常に簡単で、ASP.NET には開始するための例がたくさんあります。

于 2012-04-27T14:32:23.210 に答える
0

を使用してを実装する例を次に示します(これは正常に動作するはずです) コントローラー部分:MVC3

 public ActionResult Index()
        {
            ViewBag.Message = "SSE WITH ASP.NET MVC";
            return View();
        }
        public ActionResult Message()
        {
            var result = string.Empty;
            var sb = new StringBuilder();
            sb.AppendFormat("data: {0}\n\n", DateTime.Now.ToString());
            return Content(sb.ToString(), "text/event-stream");

        }

ビュー パーツ:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
        <script type="text/javascript">

            function contentLoaded() {
                var source = new EventSource('home/message');
                //var ul = $("#messages");
                source.onmessage = function (e) {

                    var li = document.createElement("li");
                    var returnedItem = e.data;
                    li.textContent = returnedItem;
                    $("#messages").append(li);
                }
            };

            window.addEventListener("DOMContentLoaded", contentLoaded, false);
        </script>
        <h2><%: ViewBag.Message%></h2>
        <p>
            SSE WITH ASP.NET MVC
        </p>
        <ul id="messages">
        </ul>

出力:

ここに画像の説明を入力

于 2015-09-29T08:29:17.883 に答える