Запросы между источниками поддерживаются только для схем протоколов: http
Это общий вопрос JavaScript, но он появляется в этом коде, который использует Splunk JavaScript SDK... ошибка:
XMLHttpRequest не может загрузить файл:///C:/proxy/services/auth/login? Output_mode=json. Запросы между источниками поддерживаются только для схем протоколов: http, data, chrome, chrome-extension, https, chrome-extension-resource. jquery.min.js:4
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<script type="text/javascript" src="json2.js"></script>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script type="text/javascript" src="prettify.js"></script>
<script type="text/javascript" src="bootstrap.tabs.js"></script>
<script type="text/javascript" src="bootstrap.dropdown.js"></script>
<script type="text/javascript" src="jquery.placeholder.min.js"></script>
<script type="text/javascript" src="splunk.js"></script>
<script type="text/javascript" charset="utf-8">
console.log('a');
var http = new splunkjs.ProxyHttp("/proxy");
var service = new splunkjs.Service(http, {
username: "admin",
password: "Moravac123223",
scheme: "https",
host: "localhost",
port: "8089",
version: "5.0"
});
console.log('b');
// First, we log in
service.login(function(err, success) {
// We check for both errors in the connection as well
// as if the login itself failed.
if (err || !success) {
console.log("Login failure. Please check your server hostname and authentication credentials.");
done(err || "Login failed");
return;
}
// Now that we're logged in, let's get a listing of all the apps.
service.apps().fetch(function(err, apps) {
if (err) {
console.log("There was an error retrieving the list of applications:", err);
done(err);
return;
}
var appsList = apps.list();
console.log("Applications:");
for(var i = 0; i < appsList.length; i++) {
var app = appsList[i];
console.log(" App " + i + ": " + app.name);
}
done();
});
});
</script>
</body>
</html>
1 ответ
Я согласен с Charlietfl. Если у вас есть Apache и / или IIS, это должен быть довольно быстрый тест, чтобы убедиться, что это исправило это.
Если вы новичок на веб-сервере в целом, не бойтесь, что у них есть приложения, такие как Xampp, которые настраивают весь ваш стек LAMP из одного исполняемого файла.
Поскольку вы проходите аутентификацию на своем собственном сервере, вы можете (не) столкнуться с этим, но у меня возникли проблемы с запуском локальных RESTful-приложений и в ожидании того, что вы используете на сервере, мне нужно было сделать что-то вроде этого: setHeader('Access-Control-Allow-Origin', '*'); в заголовок моего ответа.
Очевидно, что вам не нужно что-то подобное, если вы решите создать какой-то веб-сервис корпоративного класса, но для локального тестирования, которое обычно решает случайные проблемы с CORS, с которыми я столкнулся.
Удачи в вашем веб-приложении!