Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Löschen einer FHIR-Ressource
Die delete FHIR-Interaktion entfernt eine vorhandene FHIR-Ressource aus einem HealthLake Datenspeicher. Weitere Informationen finden Sie delete
Um eine FHIR-Ressource zu löschen
-
Sammeln HealthLake
regionund bewertendatastoreId. Weitere Informationen finden Sie unter Eigenschaften des Datenspeichers abrufen. -
Ermitteln Sie den FHIR-Typ, der gelöscht
Resourcewerden soll, und erfassen Sie den zugehörigenidWert. Weitere Informationen finden Sie unter Ressourcentypen. -
Konstruieren Sie mithilfe der gesammelten Werte für HealthLake
regionunddatastoreIdeine URL für die Anfrage. Geben Sie auch denResourceFHIR-Typ und den zugehörigenidTyp an. Scrollen Sie über die Schaltfläche Kopieren, um den gesamten URL-Pfad im folgenden Beispiel anzuzeigen.DELETE https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Resource/id -
Senden Sie die Anforderung . Die
deleteFHIR-Interaktion verwendet eineDELETEAnfrage mit entweder AWS Signature Version 4 oder SMART bei der FHIR-Autorisierung. Im folgendencurlBeispiel wird eine vorhandenePatientFHIR-Ressource aus einem HealthLake Datenspeicher entfernt. Scrollen Sie über die Schaltfläche Kopieren, um das gesamte Beispiel anzuzeigen.
Löschen von FHIR-Ressourcen auf der Grundlage von Bedingungen
Bedingtes Löschen ist besonders nützlich, wenn Sie die spezifische FHIR-Ressourcen-ID nicht kennen, aber über andere identifizierende Informationen zu der Ressource verfügen, die Sie löschen möchten.
Mit dem bedingten Löschen können Sie eine vorhandene Ressource anhand von Suchkriterien und nicht anhand der logischen FHIR-ID löschen. Wenn der Server die Löschanforderung verarbeitet, führt er eine Suche mithilfe von Standardsuchfunktionen für den Ressourcentyp durch, um eine einzelne logische ID für die Anforderung aufzulösen.
So funktioniert bedingtes Löschen
Die Aktion des Servers hängt davon ab, wie viele Treffer er findet:
-
Keine Treffer: Der Server versucht einen normalen Löschvorgang und reagiert entsprechend (404 Not Found für eine nicht existierende Ressource, 204 Kein Inhalt für bereits gelöschte Ressource)
-
Eine Übereinstimmung: Der Server führt eine normale Löschung der entsprechenden Ressource durch
-
Mehrere Treffer: Gibt den Fehler 412 Precondition Failed zurück, der darauf hinweist, dass die Kriterien des Clients nicht selektiv genug waren
Reaktionsszenarien
AWS HealthLake verarbeitet bedingte Löschvorgänge mit den folgenden Antwortmustern:
Erfolgreiche Operationen
-
Wenn Ihre Suchkriterien erfolgreich eine einzelne aktive Ressource identifizieren, gibt das System nach Abschluss des Löschvorgangs 204 Kein Inhalt zurück, genau wie bei Standardlöschvorgängen.
ID-basiertes bedingtes Löschen
Beim Ausführen eines bedingten Löschvorgangs auf der id Grundlage zusätzlicher Parameter (createdAt,tag, oder_lastUpdated):
-
204 Kein Inhalt: Die Ressource wurde bereits gelöscht
-
404 Nicht gefunden: Die Ressource existiert nicht
-
409 Konflikt: Die ID stimmt überein, aber andere Parameter stimmen nicht überein
Non-ID-Based Bedingtes Löschen
Wenn nicht id angegeben oder wenn andere Parameter verwendet werden alscreatedAt,tag, oder_lastUpdated:
-
404 Nicht gefunden: Keine Treffer gefunden
Konfliktsituationen
Verschiedene Szenarien führen zu den Antworten 412 Precondition Failed:
-
Mehrere Ressourcen entsprechen Ihren Suchkriterien (die Kriterien sind nicht spezifisch genug)
-
Versionskonflikte bei der Verwendung von ETag Headern mit
If-Match -
Ressourcenaktualisierungen, die zwischen Such- und Löschvorgängen auftreten
Beispiel für ein erfolgreiches bedingtes Löschen
Im folgenden Beispiel wird eine Patientenressource anhand bestimmter Kriterien gelöscht:
DELETE https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?name=peter&birthdate=2000-01-01&phone=1234567890
Mit dieser Anfrage wird eine Patientenressource gelöscht, wobei:
Der Name ist „Peter“
Geburtsdatum ist der 1. Januar 2000
Die Telefonnummer ist 1234567890
Bewährte Methoden
-
Verwenden Sie spezifische Suchkriterien, um Mehrfachübereinstimmungen und 412-Fehler zu vermeiden.
-
Ziehen Sie ETag Header für die Versionskontrolle in Betracht, wenn dies für gleichzeitige Änderungen erforderlich ist.
-
Gehen Sie angemessen mit Fehlerreaktionen um:
Für 404: Verfeinern Sie Ihre Suchkriterien
Für 412: Spezifizieren Sie die Kriterien oder lösen Sie Versionskonflikte
-
Bereiten Sie sich auf Zeitkonflikte in Umgebungen mit hoher Parallelität vor, in denen Ressourcen zwischen Such- und Löschvorgängen geändert werden können.