2016-05-26 16 views
1

Ich benutze die aurelia http.get und es funktioniert mit IE und Chrome, aber Firefox löst eine Ausnahme 'SyntaxError: JSON.parse: unerwartetes Zeichen in Zeile 1 Spalte 1 der JSON-Daten' .Aurelia http.get funktioniert nicht mit Firefox

Wenn ich die Rückkehr in Firefox console.log es Tags drauf hat als solche,

<string xmlns="http://schemas.microsoft.com/2003/10/Serialization/"> 
    [{"ID":1,"Name":"Bob",...}] 
</string> 

Diese gerade aus dem API-Aufruf ist.

Antwort

1

Ich habe eine Antwort in der Aurelia Gitter. Das Problem war, dass Firefox http.get-Anfrage an xml ausfüllt und Sie müssen den httpClient konfigurieren, um ausdrücklich nach json zu fragen.

httpClient.configure(config => { 
    config.withHeader('Content-Type', 'application/json'); 
}); 

Das löste mein Problem. Nicht sicher, warum Firefox standardmäßig XML verwendet. Der Controller sagte sogar JsonConvert.Seralize (Inhalt) bei der Rückkehr, aber Firefox kümmerte es nicht. IE und Chrome funktionieren einwandfrei. Danke @apawsey dafür, dass du mir geholfen hast, das Problem zu verstehen.

0

Haben Sie nicht genug Rep zu kommentieren. Es würde helfen, wenn Sie Ihren http.get-Code veröffentlichen würden. U bekommen offensichtlich Ihre Daten, aber das Format scheint falsch (zumindest für Firefox). Ich schlage vor, Sie lesen in den Dokumenten und finden Sie, wie Sie den Typ der Daten festlegen, die in dem http-Aufruf gesendet werden. Ich denke, andere Browser herausfinden, dass für sich selbst, aber Firefox scheint zu verlieren

+0

Überprüfen Sie den ersten Kommentar von chovy hier: https://github.com/aurelia/http-client/issues/39 –

+0

IE-Format ist korrekt, es ist Firefox, der dieses Format hat. Ich habe die Header wie gewünscht geändert, aber immer noch das gleiche Ergebnis. Gibt es eine Möglichkeit, die Rückgabe in JSON zu konvertieren? Ich schaute auf den MIME-Typ und es sagt XML. – seroth

+0

Ok. Hast du Fiddler installiert? Ich möchte sehen, dass die Header gesendet werden. Wenn Sie hier https://www.sencha.com/forum/archive/index.php/t-147223.html überprüfen, hatte jemand ein ähnliches Problem. Chrome und IE waren in Ordnung, aber Firefox erhielt XML statt JSON. –

Verwandte Themen