0
我的情況(很簡單)如下:多個ipcam請求可以阻止瀏覽器?
- 在單頁我有ň IPCAM對象。每個ipcam對象都有自己的div,每次接收到前一個圖像時ipcam的圖像都會更新。
- 一個javascript函數調用一個php文件(傳遞ipcam的id作爲參數),它返回帶有套接字請求的圖像(在選擇了該特定id [ip,port,authentication,username,password etc等]的設置後) )。
Javascript代碼(簡化的)
//called by a timer
function refresh_ipcam(id){
if(parseInt($("#"+id).attr('refresh_finished')) == 1){
$("#"+id).attr('refresh_finished',0);
var img = new Image(....);
var x = new Date().getTime();
img.src = "get_image.php?id="+id+"&random="+x;
img.onload = function(){
$("#"+id).html(img);
$("#"+id).attr('refresh_finished',1);
}
img.onerror = function(e){
setTimeout(function(e){
$("#"+id).attr('refresh_finished',1);
},2000)
}
}
}
通過添加隨機參數,瀏覽器總是檢測新的圖像。通過這種方式,我解決了一個問題(圖像未正確更新緩存問題)。但是,考慮到提出的請求數量很高,我認爲這種方式存在另一種問題。
某些用戶報告了瀏覽器的塊(過了一段時間)。這可能是一個與全緩存相關的問題嗎?
從谷歌鉻控制檯,在應用程序>框架>圖像部分,我注意到每個請求(get_image.php)匹配此列表中的新元素。