Lightning Data-Service gibt neue Fehlerwerte zurück
Wo: Diese Änderung gilt für Organisationen mit Lightning-Webkomponenten in Lightning Experience, Lightning-Communities und allen Versionen der mobilen Anwendung in allen Editionen. Verwenden Sie zum Erstellen einer Lightning-Webkomponente die Enterprise, Performance, Unlimited oder Developer Edition.
Warum: Das neue Fehlerobjekt, das nach dem Antwortobjekt der Fetch-API modelliert wird, besitzt eine einfachere Form zur Unterstützung der UI-API und anderer Salesforce-APIs.
Wie: Zuvor haben Sie die Fehlermeldung mit error.message erfasst und das Fehlerobjekt sah wie folgt aus.
//Before Spring ’19 { type: enum<string>; message: string; details: object; }
Nun können Sie die Fehlermeldung mit error.body.message oder error.body[].message erfassen, je nachdem, welche API sie zurückgibt. Das Fehlerobjekt wurde wie folgt geändert.
//After Spring ’19 { body: object|array; ok: boolean; status: number; statusText: string }
- body (Objekt|Array): Der Text der von der zugrunde liegenden API definierten Antwort.
- ok (Boolescher Wert): Gibt an, ob die Antwort erfolgreich war. ok ist immer auf false festgelegt.
- status (Nummer): Enthält den Statuscode der Antwort, beispielsweise 404, wenn eine Ressource nicht gefunden wird, oder 500 für einen internen Serverfehler.
- statusText (Zeichenfolge): Enthält die Statusmeldung, die dem Statuscode entspricht, beispielsweise Nicht gefunden für den Statuscode 404.
Der Fehlerantworttext hängt von der API ab, die ihn zurückgibt.
- Bei UI-API-Lesevorgängen, beispielsweise beim Kabeladapter getRecord, wird error.body als ein Array von Objekten zurückgegeben.
- Bei UI-API-Schreibvorgängen, beispielsweise beim Kabeladapter createRecord, wird error.body als Objekt zurückgegeben, und zwar oftmals mit Fehlern auf Objekt- und Feldebene.
- Apex-Lese- und Schreibvorgänge geben error.body als ein Objekt zurück.
- Netzwerkfehler, beispielsweise Offline-Fehler, geben error.body als Objekt zurück.