仅支持以下协议方案的跨源请求:http

2024-05-30

这是一个常见的 JavaScript 问题,但它在使用 Splunk JavaScript SDK 的代码中弹出...错误是:

XMLHttpRequest 无法加载 file:///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>

我同意查理特弗的观点。如果您有 apache 和/或 IIS,那么应该进行一个相当快速的测试来验证是否已修复该问题。

如果您对网络服务器不太熟悉,请不要担心他们有类似的应用程序Xampp https://www.apachefriends.org/index.html从一个可执行文件设置整个 LAMP 堆栈。

由于您正在对自己的服务器进行身份验证,因此您可能(不会)遇到这种情况,但我在运行本地 RESTful 应用程序时遇到了麻烦,并且等待您在后端使用的内容,我需要执行以下操作: setHeader('Access -Control-Allow-Origin', '*');到我的回复的标题。

显然,如果您决定创建某种企业级 Web 服务,您不会想要这样的东西,但对于本地测试,这通常可以解决我遇到的随机 CORS 问题。

祝您的网络应用程序好运!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

仅支持以下协议方案的跨源请求:http 的相关文章

随机推荐