你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Submit 属性 Batch

提交属性批处理。

提交一批属性操作。 将提交所有操作或未提交任何操作。

请求

方法 请求 URI
POST /Names/{nameId}/$/GetProperties/$/SubmitBatch?api-version=6.0&timeout={timeout}

参数

名称 类型 必需 位置
nameId string 路径
api-version 字符串 查询
timeout integer (int64) 查询
PropertyBatchDescriptionList PropertyBatchDescriptionList “是” Body

nameId

类型:字符串
必需:是

Service Fabric 名称,不带“fabric:”URI 方案。


api-version

类型:字符串
必需:是
默认

API 的版本。 此参数是必需的,其值必须为“6.0”。

Service Fabric REST API 版本基于引入或更改 API 的运行时版本。 Service Fabric运行时支持多个版本的 API。 这是 API 的最新支持版本。 如果传递了较低的 API 版本,则返回的响应可能与此规范中所述的响应不同。

此外,运行时接受的任何版本都高于当前版本的运行时的最新支持版本。 因此,如果最新的 API 版本为 6.0,但如果运行时为 6.1,以便更轻松地编写客户端,运行时将接受该 API 的版本 6.1。 但是,API 的行为将按照记录的 6.0 版本进行。


timeout

类型:整数 (int64)
必需:否
默认
InclusiveMaximum4294967295
InclusiveMinimum1

执行操作的服务器超时,以秒为单位。 此超时指定客户端可以等待请求的操作完成的持续时间。 此参数的默认值为 60 秒。


PropertyBatchDescriptionList

类型PropertyBatchDescriptionList
必需:是

描述要提交的属性批处理操作。

响应

HTTP 状态代码 描述 响应架构
200 (正常) 成功的响应意味着属性批处理成功。
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"
}