簡體   English   中英

跨源請求僅支持協議方案:http

[英]Cross origin requests are only supported for protocol schemes: http

這是一個通用的 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>

我同意 Charlietfl。 如果你有 apache 和/或 IIS,它應該是一個非常快速的測試來驗證它是否修復了它。

如果您是網絡服務器的新手,請不要擔心他們有像Xampp這樣的應用程序,可以從一個可執行文件設置您的整個 LAMP 堆棧。

由於您正在對自己的服務器進行身份驗證,因此您可能(不會)遇到這種情況,但是我在運行本地 RESTful 應用程序時遇到了麻煩,並且在等待您在后端使用的內容時,我需要執行以下操作: setHeader('Access -Control-Allow-Origin', '*'); 到我的回復標題。

顯然,如果您決定創建某種企業級 Web 服務,您不會想要這樣的東西,但對於本地測試,這通常會繞過我遇到的隨機 CORS 問題。

祝你的網絡應用程序好運!!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM