2016-07-18 15 views
0

Nagiosサーバー上のホストの状態を表示するために、WebサイトからNagiosサーバーに接続しようとしています。ウェブサイト経由でNagios Apiに接続する

私はcurlコマンドを実行しました。私はjsonレスポンスを返して動作します。しかし、今私はWebアプリケーションのために接続しようとすると、jQueryは私にGET 401の不正なエラーを与えます。

jquery-3.1.0.js:9392 GET http://41.87.218.55/nagios/cgi-bin/objectjson.cgi?query=hostlist&parenthost=none&childhost=none 401 (Unauthorized) 
send @ jquery-3.1.0.js:9392 
ajax @ jquery-3.1.0.js:8999 
getData @ myJavaAng.js:187 
(anonymous function) @ myJavaAng.js:203 

マイコード:

function getData() { 
    var name, code; 
    var serviceURL = "http://test:[email protected]/nagios/cgi-bin/objectjson.cgi?query=hostlist&parenthost=none&childhost=none"; 
    $.support.cors = true; 
    $.ajax({ 
    type: "GET", 
    dataType: "json", 
    crossDomain: true, 
    url: serviceURL, 
    success: function(data) { 
     alert(data); 
    }, 
    error: function(XMLHttpRequest, textStatus, errorThrown) { 
     console.log(errorThrown); 
    } 
    }); 
} 

私が間違ってやっているお聞かせください。

答えて

0

これは私が同じ問題を抱えている人のためのものです。

nagiosサーバーは、APIに接続するために使用していたJavascriptまたはjQueryを受け入れていませんでした。これは、同一起点ポリシーのためです。

ここには、何かを行う簡単なPHPスクリプトがあります。

<?php 
$url = 'http://test:[email protected]/nagios/cgi-bin/objectjson.cgi?query=hostlist&parenthost=none&childhost=none'; 
$obj = json_decode(file_get_contents($url), true); 

print_r($obj); 
?> 

これは、同じ問題を抱えている人に役立ちます。

関連する問題