Javascript 通过https和身份验证将IP cam的实时提要嵌入网站

Javascript 通过https和身份验证将IP cam的实时提要嵌入网站,javascript,html,networking,webcam,Javascript,Html,Networking,Webcam,所以我知道你的第一个想法:“太好了。另一个不知道如何使用搜索按钮的家伙。”然而,我的情况有点独特。再加上我已经尝试完成一个简单的壮举超过10个小时了,这意味着我希望你理解我的来历 首先,我是一个新手程序员,对html和CSS有一定的了解。然而,我对JS的了解还不够深入 目标:将IP cam提要集成到我目前正在开发的网站中 到目前为止我所尝试的: 使用以下代码首先登录到网络摄像头的UI(使用外部IP地址和端口号),然后从UI抓取流并将其显示在我的网页上: <img src="https://

所以我知道你的第一个想法:“太好了。另一个不知道如何使用搜索按钮的家伙。”然而,我的情况有点独特。再加上我已经尝试完成一个简单的壮举超过10个小时了,这意味着我希望你理解我的来历

首先,我是一个新手程序员,对html和CSS有一定的了解。然而,我对JS的了解还不够深入

目标:将IP cam提要集成到我目前正在开发的网站中

到目前为止我所尝试的:

使用以下代码首先登录到网络摄像头的UI(使用外部IP地址和端口号),然后从UI抓取流并将其显示在我的网页上:

<img src="https://[IP ADDRESS OF IP CAM:PORT NUMER]/snapshot.cgi?username=[username]&password=[password]&t=" onload='setTimeout(function() {src = src.substring(0, (src.lastIndexOf("t=")+2))+(new Date()).getTime()}, 1000)' onerror='setTimeout(function() {src = src.substring(0, (src.lastIndexOf("t=")+2))+(new Date()).getTime()}, 5000)' alt='please wait 2' />

此外,我还尝试使用以下代码打开一个新窗口并单独登录到UI,以便绕过身份验证要求:

<script>
function login() {
document.form.action="https://[IP ADDRESS OF IP CAM: PORT NUMBER]/login.cgi?uri=/";
document.form.submit();
}

</script>
</HEAD>
<BODY onLoad="login()">
<FORM NAME="form" METHOD="post">
<input type="hidden" id="uri"  name="uri" value=" /" />
<INPUT TYPE="hidden" id="username" NAME="username" VALUE="[username]">
<INPUT TYPE="hidden" id="password" NAME="password" VALUE="[password]">
<input type="hidden" value=" Login" />

</FORM>

函数登录(){
document.form.action=“https://[IP CAM的IP地址:端口号]/login.cgi?uri=/”;
document.form.submit();
}
那么为什么要尝试第二种选择呢?原因是,如果我正在运行该网站,并通过外部IP地址登录到相机,相机提要将完美显示(使用第一段代码)。然而,当我从摄像机中退出时,feed就停止了工作

我已经做了无数的谷歌搜索,我在我最后的希望。如果有人能给我任何建议,我将不胜感激。因为如果我使用外部IP地址登录(同一台计算机)到相机,我可以在网页上完美地查看提要,我知道我离胜利已经不远了

另外,第二个代码块无法引入登录。它会将我带到相机的UI登录页面,但会显示:“无效凭据”


谢谢大家

HTML表单完全被忽略,URL前面有一个“198”。旁注:请使用小写的HTML标记。@Raptor还有,HTML表单完全被忽略是什么意思?加载HTML时,
onload
事件已经触发了
login()
并提交表单,而不允许用户输入用户名和密码。这是你想要的行为吗?不,对不起。首先应该加载网页,然后输入用户名和密码,然后单击提交按钮,然后删除
onload
事件,并创建提交按钮。另外,确保CGI读取POST请求,因为在第一个示例中它是GET请求。