我有以下代码,一旦手动登录,将毫无问题地拉回摄像机图像。如何以编程方式登录相机?
<img src="http://<<IP ADDRESS HERE>>:881/Streaming/channels/201/picture?TheTimeIs=<%=request.querystring("Random")%>"
style="box-shadow: 10px 10px 10px #808080;border: 1px solid #484848;max-width:300px;max-height:250px;display:block;height:auto;width:auto;margin:auto;"
title="Current Camera Image at <%=now() %>" />
我尝试了一些Javascript AJAX,但由于跨域访问而失败。我无权访问相机服务器以启用CORS。
这是我尝试过的AJAX:
<script type="text/javascript">
function WebCamResults(intClass) {
var xmlhttp;
document.body.style.cursor = 'wait';
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
}
else {// code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
//xmlhttp = new ActiveXObject("MSXML2.ServerXMLHTTP.3.0");
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById("WebCamResultDiv").innerHTML = xmlhttp.responseText;
document.body.style.cursor = 'default';
}
}
}
xmlhttp.open("GET", "http://<<IP ADDDRESS HERE>>:881/Streaming/channels/201/picture", true, "admin", "12345");
xmlhttp.withCredentials = true;
xmlhttp.setRequestHeader("Access-Control-Allow-Origin", "*")
xmlhttp.setRequestHeader("Authorization", "Basic YWRtaW46MTIzNDU=");
xmlhttp.send();
}
</script>
<div id="WebCamResultDiv" style="display:inline;">
</div>
<hr />
<input type="button" value="Refresh Image JS" onclick="WebCamResults();" />
救命!
最佳答案
在HTML文件中直接捕获图像形式的IP摄像机
<img name="img1" style="-webkit-user-select: none; cursor: zoom-in;" src="http://username:password@cameraip/Streaming/channels/1/picture?videocodec=jpeg" width="200" height="200">
使用PHP复制并保存特定位置
$ file ='http://username:password@cameraip/Streaming/channels/1/picture?videocodec=jpeg';
$ newfile ='FileUpload / WBcam1 /'.$ fnm3。'。jpeg';
如果(!copy($ file,$ newfile)){
回显“未能复制$ file ... \ n”;
}否则{echo“无法复制$ newfile ... \ n”;}
请检查它在不同的浏览器中的工作方式是否不同。