Отправка пакета свойств

Отправляет пакет свойств.

Отправляет пакет операций со свойствами. Все операции или ни одна из них не будет зафиксирована.

Запрос

Метод Универсальный код ресурса (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"
}