Prüfsummen
Eine Prüfsumme ist ein Zeichenfolgenwert, der die „Version“ einer bestimmten Ressource angibt. Die System-APIs berechnen Prüfsummen nach Bedarf auf der Grundlage von Informationen über die zugrunde liegenden Entitäten in der ClaimCenter-Datenbank.
Wenn ein Prozess Daten entweder durch Benutzeraktionen, System-APIs oder andere Prozesse ändert, berechnen die System-APIs eine andere Prüfsumme für die Ressource. Sie können verlorene Aktualisierungen verhindern, indem Sie die Prüfsumme einer Ressource überprüfen, bevor Sie die Ressource ändern, um zu sehen, ob sie mit einer zuvor abgerufenen Prüfsumme übereinstimmt.
Standardmäßig werden Prüfsummen in den Antwortzahlen aller GETs, POSTs und PATCHs bereitgestellt.
Prüfsummen können enthalten sein in:
- Anforderungs-Nutzdaten, die für Folgendes geeignet sind:
- PATCHs
- POSTs für Geschäftsaktionen, die Anforderungs-Nutzdaten zulassen (z. B. POST
/{activityID}/assign)
- Objekt-Header anfordern für:
- DELETEs
- POSTs für Geschäftsaktionen, die keine Anforderungs-Nutzdaten zulassen
Wenn Sie eine Anforderung mit einer Prüfsumme übermitteln, berechnet ClaimCenter die Prüfsumme und vergleicht diesen Wert mit dem übermittelten Prüfsummenwert.
- Wenn die Werte übereinstimmen, ermittelt ClaimCenter, dass die Ressource seit dem letzten Abrufen der Daten durch die aufrufende Anwendung nicht geändert wurde. Die Anforderung wird ausgeführt.
- Wenn die Werte nicht übereinstimmen, ermittelt ClaimCenter, ob die Ressource geändert wurde, seit die aufrufende Anwendung die Daten zuletzt erfasst hat. Die Anforderung wird nicht ausgeführt und ClaimCenter gibt einen Fehler ähnlich dem folgenden zurück:
{ "message": "The supplied checksum '1' does not match the current checksum '2' for the resource with uri '/common/v1/notes/xc:101'", "properties": { "uri": "/common/v1/notes/xc:101", "currentChecksum": "2", "suppliedChecksum": "1" } }
In vielen Fällen sind Prüfsummen einfache ganzzahlige Werte, die bei jeder Aktualisierung erhöht werden. Das ist jedoch nicht immer der Fall. Für einige Ressourcen ist die Prüfsumme ein komplizierterer Zeichenfolgenwert, z. B. „fwer:3245-11xwj“. Wenn eine Prüfsumme eine Ganzzahl ist, gibt es auch keine Garantie, dass die nächste Prüfsumme der um eins erhöhte ganzzahlige Wert ist. Guidewire rät von aufrufenden Anwendungen ab, die den nächsten Prüfsummenwert vorhersagen möchten. Beschränken Sie Prüfsummen in System-API-Anforderungen auf die Prüfsummen, die in früheren Antworten zurückgegeben wurden.