Submit プロパティ Batch

プロパティ バッチを送信します。

プロパティ操作のバッチを送信します。 すべての操作がコミットされるか、コミットされません。

Request

Method 要求 URI
POST /Names/{nameId}/$/GetProperties/$/SubmitBatch?api-version=6.0&timeout={timeout}

パラメーター

名前 Type 必須 場所
nameId string はい パス
api-version string はい クエリ
timeout integer (int64) いいえ クエリ
PropertyBatchDescriptionList PropertyBatchDescriptionList はい Body

nameId

: string
必須: はい

"fabric:" URI スキームを除いた Service Fabric の名前。


api-version

: string
必須: はい
既定値:

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

: integer (int64)
必須: いいえ
既定値:
InclusiveMaximum: 4294967295
InclusiveMinimum: 1

操作を実行するためのサーバー タイムアウト (秒単位)。 このタイムアウトは、要求した操作が完了するまでクライアントが待機できる期間を指定します。 このパラメーターの既定値は 60 秒です。


PropertyBatchDescriptionList

: PropertyBatchDescriptionList
必須: はい

送信するプロパティ バッチ操作について説明します。

応答

HTTP 状態コード 説明 応答スキーマ
200 (OK) 応答が成功したということは、プロパティ バッチが成功したことを意味します。
SuccessfulPropertyBatchInfo
409 (Conflict) 409 応答は、いずれかのプロパティ バッチ操作が失敗し、エラーに関する詳細情報が含まれていることを意味します。 どの操作もコミットされませんでした。
FailedPropertyBatchInfo
その他のすべての状態コード 詳細なエラー応答。
FabricError

使用例

プロパティ バッチ操作

この例では、プロパティ バッチを送信する方法を示します。 このバッチは、プロパティが存在することを確認し、プロパティに予期されるシーケンス番号があることを確認し、前の条件が成功した場合にのみプロパティを編集します。 次に、get 操作を実行して、プロパティの現在の情報を取得します。 すべての操作が成功した場合、バッチはトランザクション方式でコミットされ、成功応答は 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"
}