2016-05-10 7 views
-2

Hallo Ich habe eine kleine Frage: Ich habe eine Anwendung in der Ionic (localhost: 3000) erstellt und auch für die API erstellt MEAN (localhost: 4000), schalte die Anwendung Ionic in einem Terminal ein, die API für das zweite Terminal, und hier beginnt das Problem nämlich, wenn man versucht, Daten vom Server mit Hilfe der GET-Anfrage korrekt zu laden, weil es die hat Status von 200, aber als Antwort erhalte ich Fehler:Ionic "SynatxError: JSON.parse: unerwartetes Ende der Daten in Zeile 1 Spalte 1 der JSON-Daten"

"SynatxError: JSON.parse: unexpected end of data at line 1 column 1 of the JSON data"

ich weiß nicht, wie die Daten vom Server zu senden Express.js zu beheben:

app.get('/data', function(req, res) { 
res.json({name: "kacper", age: 22}) 
}); 

Funktion in Ionic App:

$scope.getData = function(){ 
$http.get('http://localhost:4000/data').than(function(data){ 
console.log('Success: ' + data); 
$scope.data = data; 
}, function(err) { 
console.log('Error: ' + err); 
}) 
} 

immer bekomme ich eine Fehlermeldung, aber Status 200 oder ionische App eine Verbindung zum Server.

Körper-Parser konfiguriert:

app.use (bodyParser.urlencoded ({extended: true})); app.use (bodyParser.json());

Irgendwelche Vorschläge?

Antwort

1

nur geben Sie Ihre Schlüssel des json

res.json({"name": "kacper", "age": 22}) 

Auch, wenn Sie auf localhost verweisen, Ihr Client in der gleichen Maschine des Servers sein müssen, wenn Sie in einem realen Gerät testen, ändern an die Server-IP und überprüfen Sie, ob es zugänglich ist.

Schließlich ändern Sie Ihre „als“ für „und dann“

+0

habe ich es und weiterhin die gleichen Fehler, Version express: 4.8.8, Version Körper-Parser: 1.8.0 – Kaker

+0

Sind Sie sicher, dass sie die gleichen Error? unerwartetes Ende der Daten in Zeile 1 Spalte 1 der JSON-Daten ist ein fehlerhafter JSON-Fehler, und dieser neue ist wohlgeformt. Versuchen Sie Ihre JSON in http://jsonlint.com/ und überprüfen Sie Fehler – Del

+0

Ich bearbeitet von einem anderen Fehler Ihres Codes – Del