如何使用jquery提供用户名和密码

时间:2011-08-23 13:11:46

标签: jquery ajax proxy

我尝试了几个小时,用查询提供我的用户名和密码。 我找到了不同的答案,如

$.ajax({        
username: "user",
password: "password",
url: "http://de.wikipedia.org/wiki/S",
type: "GET",
dataType:'json',
success: function() {alert('blub');},
error: function(){alert('nein!');}, });

$.ajax({        
url: "http://de.wikipedia.org/wiki/S",
success: function() {alert('blub');},
error: function(){alert('nein!');},
beforeSend: function(xhr){
xhr.setRequestHeader("Authorization", "Basic c2Nod1bm5zmRlbGbg0K")},    
});

$('#test1').load('http://c2odWhbm5zmlbGpgOK@de.wikipedia.org/wiki/S');

还有几个,但它们都不起作用。 有人可以帮忙吗? 请!!!我绝望了!!!

也许我应该更具体。 如果我尝试打开文档,我会收到错误“”NetworkError:407需要代理身份验证 - http://de.wikipedia.org/wiki/S“” 所以我认为用户名和密码没有正确传递。

3 个答案:

答案 0 :(得分:3)

您似乎违反了相同的原始政策:

  

由于浏览器安全限制,大多数“Ajax”请求都是主题   同源政策;   请求无法从其他域,子域或协议成功检索数据。   脚本和JSONP请求不受相同的源策略限制。

答案 1 :(得分:0)

要避免@jk提到的SOP,您可能需要服务器端脚本(在主机上)来加载外部URL并将数据返回到客户端脚本。

修改以添加评论。

我是.Net的人,所以我的PHP帮助将受到限制。我认为您可以使用CURL来使用PHP中的外部Web资源,我假设CURL可以在帖子上传递凭据。你的javascript必须发布到你的PHP文件,这将发布到维基百科并返回你需要的任何javascript。

答案 2 :(得分:0)

虽然我建议您对密码非常小心,不要将其存储在可公开访问的(html / js)文件中,但这是我的10美分。

对于这个维基百科网站,登录就是这样的:

POST事务发生在:

http://de.wikipedia.org/w/index.php?title=Spezial:Anmelden&action=submitlogin&type=login&returnto=S

发送以下参数:

  • wpName:blablabla
  • wpPassword:blablabla
  • wpCentralLogin:1
  • wpLoginAttempt:Anmelden
  • wpLoginToken:bignumberthingythatwillprobablybedifferenteachtime

希望能让你前进。