Как доставить имя пользователя и пароль с помощью jquery - PullRequest
0 голосов
/ 23 августа 2011

Я пытался в течение нескольких часов, чтобы доставить свое имя пользователя и пароль с запросом.Я нашел разные ответы, такие как

$.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 Proxy Authentication Required - http://de.wikipedia.org/wiki/S"" Так что я думаю, что имя пользователя и пароль неверны.

Ответы [ 3 ]

3 голосов
/ 23 августа 2011

Похоже, что у вас есть нарушение той же политики происхождения:

Из-за ограничений безопасности браузера большинство запросов "Ajax" подчиняются той же политике происхождения;запрос не может успешно получить данные из другого домена, субдомена или протокола.На запросы сценариев и JSONP не распространяются одинаковые ограничения политики происхождения.

0 голосов
/ 23 августа 2011

Хотя я советую вам быть очень осторожным с паролем и не хранить его в общедоступном файле (html / js), вот мои 10 центов по этому вопросу.

Для этого сайта Википедии вход в систему происходит следующим образом:

Сделка POST сделана для:

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

Отправляются следующие параметры:

  • wpName: blablabla
  • wpПароль: блаблабла
  • wpCentralLogin: 1
  • wpLoginAttempt: Anmelden
  • wpLoginToken: bignumberthingythatwillprobablybedifferenteachtime

Надеюсь, это поможет вам.

0 голосов
/ 23 августа 2011

чтобы избежать СОП, о котором упоминал @jk, вам, вероятно, понадобится серверный скрипт (на вашем хосте) для загрузки внешнего URL и возврата данных в ваш клиентский скрипт.

Редактировать: чтобы добавить свой комментарий.

Я парень .Net, поэтому моя помощь по PHP будет ограничена.Я думаю, что вы можете использовать CURL для использования внешних веб-ресурсов в PHP, и я предполагаю, что CURL может передавать учетные данные в сообщении.Ваш javascript должен будет опубликовать ваш PHP-файл, который будет публиковаться в википедии и возвращать все, что вам нужно, в javascript.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...