Eigenschaftsbatch übermitteln
Sendet einen Eigenschaftsbatch.
Übermittelt einen Batch von Eigenschaftsvorgängen. Es wird entweder ein Commit für alle oder keine der Vorgänge ausgeführt.
Anforderung
Methode | Anforderungs-URI |
---|---|
POST | /Names/{nameId}/$/GetProperties/$/SubmitBatch?api-version=6.0&timeout={timeout} |
Parameter
Name | type | Erforderlich | Standort |
---|---|---|---|
nameId |
Zeichenfolge | Ja | Pfad |
api-version |
Zeichenfolge | Ja | Abfrage |
timeout |
ganze Zahl (int64) | Nein | Abfrage |
PropertyBatchDescriptionList |
PropertyBatchDescriptionList | Ja | Body |
nameId
Typ: Zeichenfolge
Erforderlich: Ja
Der Service Fabric-Name ohne das URI-Schema 'fabric:'.
api-version
Typ: Zeichenfolge
Erforderlich: Ja
Standard:
Die Version der API. Dieser Parameter ist erforderlich, und sein Wert muss "6.0" sein.
Die Service Fabric-REST-API-Version basiert auf der Laufzeitversion, in der die API eingeführt oder geändert wurde. Die Service Fabric-Runtime unterstützt mehrere Versionen der API. Dies ist die neueste unterstützte Version der API. Wenn eine niedrigere API-Version übergeben wird, unterscheidet sich die zurückgegebene Antwort möglicherweise von der in dieser Spezifikation dokumentierten.
Darüber hinaus akzeptiert die Runtime jede Version, die höher als die neueste unterstützte Version bis zur aktuellen Version der Runtime ist. Wenn also die neueste API-Version 6.0 ist, aber die Runtime 6.1 ist, akzeptiert die Runtime Version 6.1 für diese API, um das Schreiben der Clients zu erleichtern. Das Verhalten der API entspricht jedoch der dokumentierten Version 6.0.
timeout
Typ: integer (int64)
Erforderlich: Nein
Standard:
InclusiveMaximum: 4294967295
InclusiveMinimum: 1
Der Servertimeout für die Ausführung des Vorgangs in Sekunden. Dieser Timeout gibt die Zeitdauer an, die der Client bereit ist, auf den Abschluss des angeforderten Vorgangs zu warten. Der Standardwert für diesen Parameter ist 60 Sekunden.
PropertyBatchDescriptionList
Typ: PropertyBatchDescriptionList
Erforderlich: Ja
Beschreibt die zu übermittelnden Eigenschaftenbatchvorgänge.
Antworten
HTTP-Statuscode | BESCHREIBUNG | Antwortschema |
---|---|---|
200 (OK) | Eine erfolgreiche Antwort bedeutet, dass der Eigenschaftsbatch erfolgreich war. |
SuccessfulPropertyBatchInfo |
409 (Konflikt) | Eine Antwort 409 bedeutet, dass bei einem der Eigenschaftenbatchvorgänge ein Fehler aufgetreten ist und weitere Informationen zum Fehler enthalten sind. Keiner der Vorgänge wurde committet. |
FailedPropertyBatchInfo |
Alle anderen status Codes | Die detaillierte Fehlerantwort. |
FabricError |
Beispiele
Eigenschaftsbatchvorgang
In diesem Beispiel wird gezeigt, wie Ein Eigenschaftenbatch übermittelt wird. Dieser Batch stellt sicher, dass eine Eigenschaft vorhanden ist, überprüft, ob die Eigenschaft die erwartete Sequenznummer aufweist, und bearbeitet die Eigenschaft nur, wenn die vorherigen Bedingungen erfolgreich sind. Anschließend wird ein Get-Vorgang ausgeführt, um die aktuellen Informationen der Eigenschaft abzurufen. Wenn alle Vorgänge erfolgreich sind, wird der Batch transaktional festgelegt, und eine Erfolgsantwort wird mit 200 status Code zurückgegeben. Wenn der Batch fehlschlägt, wird eine fehlerhafte Antwort mit 409 status Code zurückgegeben. Die folgende fehlgeschlagene Antwort zeigt einen Batchfehler, da die Eigenschaft keine erwartete Sequenznummer aufweist.
Anforderung
POST http://localhost:19080/Names/samples/apps/$/GetProperties/$/SubmitBatch?api-version=6.0
Text
{
"Operations": [
{
"Kind": "CheckExists",
"PropertyName": "PersistentQueueAppData",
"Exists": true
},
{
"Kind": "CheckSequence",
"PropertyName": "PersistentQueueAppData",
"SequenceNumber": "12"
},
{
"Kind": "Put",
"PropertyName": "PersistentQueueAppData",
"Value": {
"Kind": "Binary",
"Data": [
"1",
"2",
"3",
"4",
"5"
]
},
"CustomTypeId": "InitializationData"
},
{
"Kind": "Get",
"PropertyName": "PersistentQueueAppData",
"IncludeValue": false
}
]
}
Antwort 200
Text
{
"Kind": "Successful",
"Properties": {
"3": {
"Name": "PersistentQueueAppData",
"Metadata": {
"TypeId": "Binary",
"CustomTypeId": "InitializationData",
"Parent": "fabric:/samples/apps",
"SizeInBytes": "5",
"LastModifiedUtcTimestamp": "2017-07-17T05:01:19.049Z",
"SequenceNumber": "13"
}
}
}
}
409 Antwort
Text
{
"Kind": "Failed",
"ErrorMessage": "FABRIC_E_PROPERTY_CHECK_FAILED",
"OperationIndex": "1"
}