我有一个应用程序,我正在使用我页面上的 api 通过第三方设备进行录制。录制是通过 asp.net Web 服务启动和停止的。
在正常情况下,我可以通过 javascript 开始和停止录制,并且功能在所有浏览器中都可以正常工作。
但是,有一次不小心有一位用户没有停止视频,就关闭了浏览器,在这种情况下无法停止录制..然后继续录制..
所以,请给我建议一种方法,以便我可以向服务器传递请求以在浏览器关闭时自动停止录制..
我有一个应用程序,我正在使用我页面上的 api 通过第三方设备进行录制。录制是通过 asp.net Web 服务启动和停止的。
在正常情况下,我可以通过 javascript 开始和停止录制,并且功能在所有浏览器中都可以正常工作。
但是,有一次不小心有一位用户没有停止视频,就关闭了浏览器,在这种情况下无法停止录制..然后继续录制..
所以,请给我建议一种方法,以便我可以向服务器传递请求以在浏览器关闭时自动停止录制..
你不能。
您可以使用onBeforeUnload显示标准对话框或执行一些快速的非交互式操作,例如在 localStorage 中写入,但您无法发出请求(在大多数浏览器中)。
您必须处理浏览器关闭(或网络丢失,或任何事件)服务器端的情况。
不久前我问了这个问题来关闭弹出窗口,这个网站帮助了我。
var win = window.open('http://www.google.com', 'google','width=800,height=600,status=0,toolbar=0');
var timer = setInterval(function() {
if(win.closed) {
clearInterval(timer);
alert('closed');
}
}, 1000);
将函数中的代码替换为您自己的代码。
祝你好运!
编辑:但是我必须说,我还没有在所有浏览器中尝试过这个,所以你必须测试一下。