使用javascript或jquery在IE中进行HTAccess

时间:2012-01-30 11:51:57

标签: javascript jquery internet-explorer .htaccess

我需要打电话给网站说xyx.com。

它有一个通常的身份验证,我已经在jquery中实现了它。

return $.getJSON('xyx.com/restapi/login?userid=aaa&pass=qqq'+"&xslt=json.xsl&
callback=?",function(jsonResult)
{
    if(jsonResult.response.status   ==  'success')
    {
        ...
        ...
    }
},"jsonp");

以上工作正常。

现在HT Access已提供给上述网站xyx.com

我替换了上面getJSON中使用的URL,如下所示

http://msf:sks1l*@xyx.com/restapi/login?userid=aaa&pass=qqq

其中msf和sks11 *是HT Access凭证。

以上在FF中工作正常但在IE中没有。

任何可能的解决方案或解决方法。

1 个答案:

答案 0 :(得分:2)

$.getJSON()只是特定类型$.ajax()来电的简写。 jQuery文档显示了详细信息:http://api.jquery.com/jQuery.getJSON/$.getJSON相当于:

$.ajax({
  url: url,
  dataType: 'json',
  data: data,
  success: callback
});

查看http://api.jquery.com/jQuery.ajax/处的$.ajax()文档,它说:

  

如果服务器在提供之前执行HTTP身份验证   响应,用户名和密码对可以通过用户名发送   和密码选项。

所以只需使用$.ajax()表单并传递用户名和密码,如下所示:

$.ajax({
  url: "http://xyx.com/restapi/login?userid=aaa&pass=qqq",
  dataType: 'json',
  success: function(jsonResult) {
      /* your success code */
  },
  username: 'msf',
  password: ':sks1l*@'
});