Partager via


Envoyer un lot de propriétés

Envoie un lot de propriétés.

Envoie un lot d’opérations de propriété. Toutes ou aucune des opérations sera validée.

Requête

Méthode URI de demande
POST /Names/{nameId}/$/GetProperties/$/SubmitBatch?api-version=6.0&timeout={timeout}

Paramètres

Nom Type Obligatoire Emplacement
nameId string Oui Chemin d’accès
api-version string Oui Requête
timeout entier (int64) Non Requête
PropertyBatchDescriptionList PropertyBatchDescriptionList Oui body

nameId

Type : chaîne
Obligatoire : Oui

Nom Service Fabric sans le schéma d’URI 'fabric:'.


api-version

Type : chaîne
Obligatoire : Oui
Par défaut : 6.0

Version de l’API. Ce paramètre est obligatoire et sa valeur doit être « 6.0 ».

La version de l’API REST Service Fabric est basée sur la version du runtime dans laquelle l’API a été introduite ou a été modifiée. Le runtime Service Fabric prend en charge plusieurs versions de l’API. Il s’agit de la dernière version prise en charge de l’API. Si une version d’API inférieure est transmise, la réponse retournée peut être différente de celle documentée dans cette spécification.

En outre, le runtime accepte toute version supérieure à la dernière version prise en charge jusqu’à la version actuelle du runtime. Par conséquent, si la dernière version de l’API est 6.0, mais si le runtime est 6.1, afin de faciliter l’écriture des clients, le runtime accepte la version 6.1 pour cette API. Toutefois, le comportement de l’API sera en fonction de la version 6.0 documentée.


timeout

Type : integer (int64)
Obligatoire : Non
Par défaut : 60
InclusiveMaximum : 4294967295
InclusiveMinimum : 1

Délai d’attente du serveur pour l’exécution de l’opération en secondes. Il spécifie la durée pendant laquelle le client attend la fin de l’opération demandée. La valeur par défaut de ce paramètre est de 60 secondes.


PropertyBatchDescriptionList

Type : PropertyBatchDescriptionList
Obligatoire : Oui

Décrit les opérations de lot de propriétés à soumettre.

Réponses

Code d’état HTTP Description Schéma de réponse
200 (OK) Une réponse réussie signifie que le lot de propriété a réussi.
SuccessfulPropertyBatchInfo
409 (Conflit) Une réponse 409 signifie que l’une des opérations de lot de propriétés a échoué et contient plus d’informations sur l’échec. Aucune des opérations n’a été validée.
FailedPropertyBatchInfo
Tous les autres codes status Réponse d’erreur détaillée.
FabricError

Exemples

Opération de lot de propriétés

Cet exemple montre comment envoyer un lot de propriétés. Ce lot garantit l’existence d’une propriété, vérifie que la propriété a le numéro de séquence attendu et modifie la propriété uniquement si les conditions précédentes réussissent. Il effectue ensuite une opération d’obtention pour obtenir les informations actuelles de la propriété. Si toutes les opérations réussissent, le lot est validée de manière transactionnelle et une réponse de réussite est retournée avec 200 status code. Si le lot échoue, une réponse ayant échoué est retournée avec 409 status code. La réponse ayant échoué ci-dessous montre l’échec du lot, car la propriété n’a pas de numéro de séquence attendu.

Requête

POST http://localhost:19080/Names/samples/apps/$/GetProperties/$/SubmitBatch?api-version=6.0
Corps
{
  "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
    }
  ]
}

Réponse 200

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

Réponse 409

Corps
{
  "Kind": "Failed",
  "ErrorMessage": "FABRIC_E_PROPERTY_CHECK_FAILED",
  "OperationIndex": "1"
}