2016-08-09 78 views
0

Ich benutze Spring für die Ausführung meiner Rest-API-Dienst, kann ich nicht die Liste der JSON-Objekt, dass mein Service aus einer Beispiel-HTML-Datei und PLZ senden Sag mir, wie ich auf das erste Objekt zugreifen kann. AJAX zeigt keine Antwort auf eine Liste von JSON-Objekten, wie Rest API-Antwort

ist dies die Beispielausgabe meines Ruhe API-Service:

[{"src_ip":"1.1.1.1","src_id":"98","date":1470527874000}, 
{"src_ip":"1.1.2.1","src_id":"25","date":1470527934000}, 
{"src_ip":"1.1.2.1","src_id":"25","date":1470527934000}] 

und das ist der Code, den ich in meiner HTML-Datei verwendet:

<!DOCTYPE html> 
<html lang="en"> 
<head> 
<meta charset="UTF-8"> 
<title>Testing Results</title> 
<!--TODO badan version e CDN e jquery use shavad--> 
<script type="text/javascript" 
     src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> 
<script> 
$(document).ready(function() { 
    $.ajax({ 
     url: "http://127.0.0.1:8080/restapi2", 
     dataType: "jsonp" 
    }).then(function(data) { 
     $('.List').append(data); 
     $('.data').append(data[0]); 
    }); 
}); 
</script> 
</head> 
<body> 
    <div> 
     <br><br> 
     <p class="List"></p> 
     <br><br> 
     <p class="data"></p> 
    </div> 
</body> 
</html> 

soll ich sagen, dass, wenn ich ausführen, um die Probe von diesem link auf meiner HTML-Datei, hat es richtig funktioniert.

Aktualisierte Teil:

nach dem letzten Fehler Festsetzung noch habe ich keine korrekten Daten erhalten in meinem Browser zu zeigen, aber dieses Mal, die Konsole etwas bekommen, aber ich weiß nicht, wie um sie zu benutzen. Dies ist eine Momentaufnahme davon und die linke Seite zeigt, dass zwei Objekte gesendet wurden.

enter image description here

und dieser Inhalt dieses Objekt:

enter image description here

+0

Ist Ihre Spring-Anwendung die Daten zurückgibt? Erhalten Sie Daten, wenn Sie nur die URL im Browser/oder andere Tools wie POSTMAN eingeben? –

+0

Ich versuche es nicht am Postboten, aber wenn ich auschecke "http: // localhost: 8080/restapi2" sehe ich meine Antwort. –

+0

Postman Getted Antwort zu. –

Antwort

0

Auf der Grundlage der Diskussion über den Kommentar des Grund ist, Sie die andere Domäne als Ihre Seite zuzugreifen versuchen, die durch verboten Browser als Sicherheitsvorkehrung.

$(document).ready(function() { 
    $.ajax({ 
     url: "http://localhost:8080/restapi2" 
    }).then(function(data) { 
     $('.List').append(data); 
     $('.data').append(data[0].); 
    }); 
}); 

"No 'Access-Control-Allow-Origin' header is present on the requested resource"

+0

Ich aktualisiere meinen Code, um "No 'Access-Control-Allow-Origin' header loszuwerden", aber wieder habe ich keine Ausgabe bekommen. –

+0

können Sie mir mit diesem Teil wieder helfen, ich kann wirklich nicht herausfinden, was der Grund für dieses Problem ist? –

+0

Wenn sich beide Seiten (Ihre HTML-Seite und Ihr Dienst) in derselben Domäne befinden, müssen Sie keine Konfiguration für 'Kein Zugriffssteuerungs-Ursprung' vornehmen. Stellen Sie sicher, dass beide richtig sind, es kann auch Tippfehler geben –