Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何知道客户端已断开连接,并使用ASP.Net、WCF服务和;客户端会话?_Javascript_Jquery_Asp.net_Wcf_Session - Fatal编程技术网

Javascript 如何知道客户端已断开连接,并使用ASP.Net、WCF服务和;客户端会话?

Javascript 如何知道客户端已断开连接,并使用ASP.Net、WCF服务和;客户端会话?,javascript,jquery,asp.net,wcf,session,Javascript,Jquery,Asp.net,Wcf,Session,我的web应用程序在ASP.NET 4.0 C#中,我还使用了WCF服务,并使用create random userID维护会话。应用程序是关于视频管理系统。当我被请求开始流式传输到VSS(视频流服务器)时,我会将请求的摄像机和用户的所有流式传输详细信息插入SQL Server表中。在断开该特定摄像头的视频流时,我将仅从该用户的表中删除该条目。如果其他用户看到直播,其他用户的条目将保持原样 尽管某些网络断开连接或浏览器崩溃的原因并不清楚,但此条目仍不清楚。所以我想知道,如果不需要从Sql表中清除

我的web应用程序在ASP.NET 4.0 C#中,我还使用了WCF服务,并使用create random userID维护会话。应用程序是关于视频管理系统。当我被请求开始流式传输到VSS(视频流服务器)时,我会将请求的摄像机和用户的所有流式传输详细信息插入SQL Server表中。在断开该特定摄像头的视频流时,我将仅从该用户的表中删除该条目。如果其他用户看到直播,其他用户的条目将保持原样

尽管某些网络断开连接或浏览器崩溃的原因并不清楚,但此条目仍不清楚。所以我想知道,如果不需要从Sql表中清除数据,我如何知道一个客户端已断开连接,我需要仅使用检查该用户的会话是否处于活动状态来清除其与该用户ID的数据映射


请帮我解决这个问题。

网络通信的本质表明,您不能将缺少传入的IP数据包解释为客户端崩溃、移动到其他地方、去喝杯茶或突然死亡的确凿证据

要部分解决此问题,您可以:

  • 提供一个Disconnect()操作,可以调用该操作来显式终止会话或。注意,这是
  • 在客户端崩溃时实现合理的会话超时

  • 这是假设您正在从浏览器进行WCF呼叫。

    连接到此WCF服务的客户端到底是什么?它是浏览器吗?WCF客户机?httplistener?其他类型的应用程序?是的,客户端是浏览器。我的应用程序也有silverlight页面,他们使用WCF服务检索数据。谢谢回复。我已经把
    $(window.bind('unload',function(unloadLiveView();){})放在上面了
    在我的父页面中,它在浏览器的浏览关闭和结束任务中都能正常工作。但是,当客户机的notwork电缆被拔下或计算机关闭时,会产生问题。我从-,发现会话是活动的,但它应该从WCF服务调用,我是这样发现的。如果有,WCF服务如何找到客户端会话已不再存在。