У меня есть сайт, который использует базовую аутентификацию, посетитель может войти с предопределенными учетными данными. Я могу добраться до $_SERVER["PHP_AUTH_USER"]
переменная, так что все работает нормально здесь.
Но когда я пытаюсь опубликовать данные с помощью jQuery AJAX в одном домене, я не могу $_SERVER["PHP_AUTH_USER"]
переменная (не устанавливается в $_SERVER
).
Среда:
Версия сервера: Apache / 2.4.7 (Ubuntu)
Версия PHP: 5.5.9-1
Ubuntu: 4,9
(API сервера: обработчик Apache 2.0, поэтому не CGI)
Хром: 41.0.2272.76
Ubuntu 14.04 (64-разрядная версия)
Может кто-нибудь помочь с этой проблемой?
Наряду с greet прокомментировал, что сервер примет ваше приложение, если вы отправите запрос аутентификации, поэтому вы в методе Jquery Ajax и определите метод Dentrol свойством Autentification через функцию getAllResponseHeaders (), важным моментом является использование базового режима аутентификации javascript base 64 (btoa) для шифрования имени пользователя и передачи, я надеюсь, что вы найдете его полезным и пригласите вас посетить мой github, введите описание ссылки здесь, есть несколько полезных масел, созданных для проверки данных при удаче
$.ajax({
url : 'test_2.php',
type : 'GET',
beforeSend: function (xhr) {
xhr.setRequestHeader('Authorization', 'Basic ZWxlbWVudG86ZWxlbWVudG8=');
},
data: {},
success: function (e) {
console.log(e)
},
error: function (e) {
console.log(e)
},
});
Других решений пока нет …