У меня на сервере есть хост webdav, который называется sidunhosted.com/ungdav/test.json (это виртуальный хост)
У меня есть базовая авторизация на /ungdav/
.Это мой .htaccess
файл для sidunhosted.com/ungdav/.
AuthType Basic
AuthName "your unhosted data"
AuthUserFile /srv/http/sidunhosted.com/ungdav/.htpasswd
Require valid-user
Header always set Access-Control-Allow-Methods "GET, POST, DELETE, OPTIONS, PUT"
Header always set Access-Control-Allow-Headers "Content-Type, X-Requested-With, X-HTTP-Method-Override, Accept, Authorization"
Header always set Access-Control-Allow-Credentials "true"
Header always set Cache-Control "max-age=0"
Header always set Access-Control-Allow-Origin *
Я использую следующий код jQuery (с firebug) для доступа к ресурсу
$.ajax({
url: "http://sidunhosted.com/ungdav/test.json",
cache: false,
dataType: "text",
headers: {Authorization: "Basic "+btoa("smik:asdf")},
fields: {withCredentials: "true"},
success: function(text){
alert(text);
}
});
Это работает, если я на sidunhosted.com (дамп взаимодействия: http://paste.pocoo.org/show/417127/). Но не работает (возвращает Требуется авторизация), если я вызываю это с какого-то другого веб-сайта (Дамп взаимодействия: http://paste.pocoo.org/show/417128/), т.е. выполняю этот код на консоли Firebug, находясь на каком-то другом веб-сайте (с загруженным jQuery).).