ajax使用ip访问,javascript – 使用AJAX / jQuery在IP Camera上进行HTTP基本授权

博主在尝试构建一个内部网站,允许经过PHP/MySQL身份验证的用户查看需要HTTP身份验证的索尼IP摄像头的MJPEG流。目标是避免用户在查看流时需要两次输入凭证。已经尝试使用jQuery的beforeSend设置Authorization头,但遇到错误。问题在于尝试在XMLHttpRequest.open()之前设置头导致错误。解决方案可能涉及正确地在用户登录时进行身份验证调用。
摘要由CSDN通过智能技术生成

我知道这个问题之前已被问过很多次,但似乎没有一个回复对我有用,所以这是我的问题:

我有一个在内联网上的索尼IP摄像头.我正在为内部用户构建一个具有PHP / MySQL身份验证的站点,以便能够查看MJPEG流,但摄像头本身需要http身份验证.我不想让用户输入他们的用户名和密码登录到摄像头页面,然后必须输入http身份验证凭据(在弹出窗口中)才能看到流.我尝试使用jQUERY来更改标题无效.请记住,摄像头必须有自己的身份验证,以便用户不能随意键入IP并查看流.我希望能够控制谁查看什么和何时.

我假设如果我在用户登录页面时进行了正确的身份验证调用,那么他们可以“静默”登录该摄像头.此外,如果我使用带有–headers的终端使用wget :“授权:blah_Blah”它实际上有效,但我不能从jQuery做到这一点!这是我的代码:

$.ajax({

url : "http://some_ip_internally_for_the_cam/some_page_on_cam_that_needs_authentication_to_access_otherwise",

method : 'GET',

beforeSend : function(req) {

req.setRequestHeader('Authorization', "some_base_64_stuff_that_works_in_wget");

},

success: function() {

$("div.log").attr("innerHTML", "ok");

}

});

用户登录后立即加载.

有什么建议?

解决方法:

我在Firefox中遇到了同样的Javascript错误:

… 0x804b000f (NS_ERROR_IN_PROGRESS) [nsIXMLHttpRequest.setRequestHeader] …

当我试图在某个XMLHttpRequest对象中设置一个新的HTTP标头时:

xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");

发生错误是因为我试图在XMLHttpRequest.open()方法之前设置HTTP标头.

标签:jquery,javascript,http,authentication,ajax

来源: https://codeday.me/bug/20190704/1378642.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值