Wie behandeln server-Antwort Fehler mit ember data
- Was ist der ember-Daten die aktuelle Standard-erwartete Antwort vom server, wenn es etwas anderes als 200, so dass es nicht zu werfen, eine nicht abgefangene Ausnahme, sondern analysiert die Fehler für die spätere Verwendung?
z.B. {"errors":{jsonerror}} ???
- Wie soll ich mit server-Fehler Antworten (json-format) in Ember?
Dank!
InformationsquelleAutor wonderwall | 2013-07-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
@colymba habe es fast Recht, aber ich werde versuchen, ein anspruchsvolleres Antwort also es hilft Ihnen, aufstehen und laufen leichter.
Wie gesagt in der neuen router facelift, wenn ein Versuch gemacht wird, den übergang in eine route, eine der Haken
beforeModel
,model
undafterModel
kann einen Fehler auslösen, oder die return-ein Versprechen, das ablehnt, in diesem Fall einerror
event ausgelöst wird, auf die teilweise eingegebenen route, so dass Sie, um Fehler auf einer pro-route-basis.In der Fall Sie wollen die Fehler behandelt werden, Breite Anwendung definieren Sie Ihre eigenen globalen Standard
error
handler durch überschreiben dererror
- handler auf dieApplicationRoute
könnte dies wie folgt Aussehen:Berücksichtigen, dass standardmäßig ein Ereignis wird aufhören zu sprudeln, sobald eine Prozedur definiert, die sich auf
events
hash verarbeitet. Aber weiter sprudelt, die Veranstaltung den ganzen Weg bis zu denApplicationRoute
sollten Sie wiedertrue
aus, die handler, so dass Sie Benachrichtigen können, mehrerror
- handler, aus denen Sie dann wiederholen, um den übergang, um die Strecke mittransition.retry()
.Update für ember 1.0 und aufwärts
Seit der neuen ember Version 1.0, die
events
hash umbenanntactions
. Eine route error-handler sollte in deractions
hash-jetzt:Hoffe, dies hilft Ihnen.
gibt es nichts in
error.message
?Nein, es ist undefiniert
können Sie inspizieren das Loch
error
Objekt? vielleicht werden in einer anderen Eigenschaft gespeichertKlasse {id: "1", store: Klasse, _reference: Objekt, stateManager: Klasse, _changesToSync: Objekt...} ember1373755186212: "ember380" __ember1373755186212_meta: Meta _changesToSync: Objekt _reference: Objekt _super: undefined id: "1" stateManager: Klasse store: Klasse toString: function () { return ret; } Transaktion: Klasse __proto: Objekt
InformationsquelleAutor intuitivepixel
In der neuesten Router, Fehler Blase bis zum Router und kann gefangen werden in der
events: { error: function(error, transition){}}
Haken auf dem Router, die gut funktioniert, wenn mit der
model
Haken auf dem Router... Siehe https://gist.github.com/machty/5647589 für details und Beispiele..Edit:
Mit Ember-Daten habe ich eine benutzerdefinierte
Sehen https://github.com/emberjs/data/blob/master/packages/ember-data/lib/adapters/rest_adapter.js
Den
reason
param gibt Ihnen Zugang zureason.responseText
,reason.status
,reason.statusText
etc....InformationsquelleAutor colymba