Отправка пакета свойств
Отправляет пакет свойств.
Отправляет пакет операций со свойствами. Все операции или ни одна из них не будет зафиксирована.
Запрос
Метод | Универсальный код ресурса (URI) запроса |
---|---|
POST | /Names/{nameId}/$/GetProperties/$/SubmitBatch?api-version=6.0&timeout={timeout} |
Параметры
Имя | Тип | Обязательно | Расположение |
---|---|---|---|
nameId |
строка | Да | Путь |
api-version |
строка | Да | Запрос |
timeout |
integer (int64) | Нет | Запрос |
PropertyBatchDescriptionList |
PropertyBatchDescriptionList | да | Текст |
nameId
Тип: string
Обязательный: да
Имя Service Fabric без указания схемы универсального кода ресурса (URI) "fabric:".
api-version
Тип: string
Обязательный: да
По умолчанию: 6.0
Версия API. Этот параметр является обязательным и его значение должно быть "6.0".
Версия REST API Service Fabric основана на версии среды выполнения, в которой api был представлен или был изменен. Среда выполнения Service Fabric поддерживает несколько версий API. Это последняя поддерживаемая версия API. Если передается более ранжная версия API, возвращаемый ответ может отличаться от ответа, описанного в этой спецификации.
Кроме того, среда выполнения принимает любую версию, которая выше последней поддерживаемой версии, вплоть до текущей версии среды выполнения. Таким образом, если последняя версия API — 6.0, а среда выполнения — 6.1, чтобы упростить запись клиентов, среда выполнения примет версию 6.1 для этого API. Однако поведение API будет выполняться в документе версии 6.0.
timeout
Тип: integer (int64)
Обязательный: нет
По умолчанию: 60
InclusiveMaximum: 4294967295
InclusiveMinimum: 1
Время ожидания сервера до выполнения операции в секундах. Время ожидания — промежуток времени, в течение которого клиент готов ждать выполнения запрошенной операции. Значение по умолчанию для этого параметра — 60 секунд.
PropertyBatchDescriptionList
Тип: PropertyBatchDescriptionList
Обязательный: да
Описывает отправляемые пакетные операции свойств.
Ответы
Код состояния HTTP | Описание | схеме ответа. |
---|---|---|
200 OK; | Успешный ответ означает, что пакет свойств успешно выполнен. |
SuccessfulPropertyBatchInfo |
409 (конфликт) | Ответ 409 означает, что одна из операций пакета свойств завершилась сбоем, и содержит дополнительные сведения о сбое. Ни одна из операций не была совершена. |
FailedPropertyBatchInfo |
Все остальные коды состояния | Подробный ответ об ошибке. |
FabricError |
Примеры
Пакетная операция свойств
В этом примере показано, как отправить пакет свойств. Этот пакет гарантирует существование свойства, проверяет, имеет ли свойство ожидаемый порядковый номер, и изменяет свойство только в том случае, если предыдущие условия выполнены успешно. Затем он выполняет операцию получения, чтобы получить текущие сведения о свойстве. Если все операции выполняются успешно, пакет фиксируется транзакционной операцией и возвращается ответ об успешном выполнении с кодом состояния 200. Если пакет завершается сбоем, возвращается неудачный ответ с кодом состояния 409. В приведенном ниже сбое ответа отображается сбой пакета, так как свойство не имеет ожидаемого порядкового номера.
Запрос
POST http://localhost:19080/Names/samples/apps/$/GetProperties/$/SubmitBatch?api-version=6.0
Текст
{
"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
}
]
}
Ответ 200
Текст
{
"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
Текст
{
"Kind": "Failed",
"ErrorMessage": "FABRIC_E_PROPERTY_CHECK_FAILED",
"OperationIndex": "1"
}