に役立ちます。これにより、AJAXリクエストをサーバーに定期的に送信して更新をチェックしたり、何らかの条件が満たされた場合にユーザーに警告したりできます。
[Authorize]
public ActionResult Poll()
{
bool isUpdated = CheckForUpdates(User.Identity.Name);
return Json(isUpdated, JsonRequestBehavior.AllowGet);
}
とビューで:そこ場合は、使用することができ
var intervalId = window.setInterval(function() {
// send AJAX requests every 4 seconds to check for updates
$.getJSON('@Url.Action("poll")', function(isUpdated) {
if (isUpdated) {
// TODO: use some fancy popup instead of an alert :-)
alert('There are updates');
window.clearInterval(intervalId);
}
});
}, 4000);
別の技術、サーバがクライアントに通知を推進しているあなたは、このようなコントローラのアクションを持つことができる。例えば
更新です。 HTML5 WebSocketsこれを可能にします。利点は、継続的なポーリングと多数のAJAXリクエストを避けるため、はるかに最適化されていることです。ただし、ブラウザではまだ広くサポートされていないという欠点があります。現代のブラウザはそれをサポートしていますが、それはまだドラフトなので、変更される可能性がありますので、一般のインターネットではあまり人気がありません。一方、ユーザーのブラウザを制御できるなら、非常に良い解決策になるかもしれません。
あなたがそのルートに行くことを決めたら、blog of this guyをチェックアウトすることができます。
はい、ただし、写真にタグが付けられているとFacebookにポップアップ通知が表示されたときなど、新しいダイアログを動的に表示するにはどうすればよいですか。 – Steven