我在角度js中调用dahua API来预设响应但是它给了我 401 Unauthorized错误。 我的代码如下:
var streamurl='http://admin:123456@192.168.1.202/cgi-bin/ptz.cgi?action=start&channel=0&code=PositionABS&arg1=180&arg2=190&arg3=10';
$http.get(streamurl, { withCredentials: true })
.then(function(response2) {
console.log(response2.data);
});
答案 0 :(得分:0)
如何解决401未经授权的错误
- 检查网址中的错误。出现401 Unauthorized错误可能是因为URL输入错误或者点击的链接指向错误的URL - 仅限授权用户使用。
- 如果您确定网址有效,请访问网站的主页并查找“登录”或“安全访问”链接。在此处输入您的凭据,然后再次尝试该页面。如果您没有凭据,请按照网站上提供的说明设置帐户。
- 如果您确定要尝试访问的页面不需要授权,则401 Unauthorized错误消息可能是错误的。此时,最好联系网站管理员或其他网站联系人并告知他们问题。
- 登录后也会立即显示401 Unauthorized错误,这表示网站收到了您的用户名和密码,但发现某些内容无效(例如您的密码不正确)。按照网站上的任何流程重新访问他们的系统。
醇>
来自https://www.lifewire.com/401-unauthorized-error-what-it-is-and-how-to-fix-it-2622934
答案 1 :(得分:0)
我可能错了,但我认为您正在使用该请求登录屏幕。我已阅读文档,我发现您的身份验证方式仅适用于rtsp://
协议,对于http,我认为您应该修改标头,并将您的用户名/密码编码为base64,这是文档:
ftp://ftp.wintel.fi/drivers/dahua/SDK-HTTP_ohjelmointi/DAHUA_IPC_HTTP_API_V1.00x.pdf
此外你应该使用这个,因为你使用的是AngularJS / NodeJS,它会让你的生活更轻松 - 或者检查一下这个人如何进行身份验证并从他那里“借”: