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"
}