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