Compartir a través de


Enviar lote de propiedades

Envía un lote de propiedades.

Envía un lote de operaciones de propiedad. Se confirmarán todas o ninguna de las operaciones.

Solicitud

Método URI de solicitud
POST /Names/{nameId}/$/GetProperties/$/SubmitBatch?api-version=6.0&timeout={timeout}

Parámetros

Nombre Tipo Requerido Location
nameId string Ruta de acceso
api-version string Consultar
timeout entero (int64) No Consultar
PropertyBatchDescriptionList PropertyBatchDescriptionList Body

nameId

Tipo: cadena
Obligatoria: sí

Nombre de Service Fabric, sin el esquema de URI "fabric".


api-version

Tipo: cadena
Obligatoria: sí
Predeterminado:

La versión de la API. Este parámetro es necesario y su valor debe ser "6.0".

La versión de la API rest de Service Fabric se basa en la versión en tiempo de ejecución en la que se introdujo o se cambió la API. El entorno de ejecución de Service Fabric admite más de una versión de la API. Esta es la versión compatible más reciente de la API. Si se pasa una versión de API inferior, la respuesta devuelta puede ser diferente de la documentada en esta especificación.

Además, el tiempo de ejecución acepta cualquier versión superior a la versión admitida más reciente hasta la versión actual del entorno de ejecución. Por lo tanto, si la versión más reciente de la API es 6.0, pero si el runtime es 6.1, para facilitar la escritura de los clientes, el entorno de ejecución aceptará la versión 6.1 para esa API. Sin embargo, el comportamiento de la API será según la versión 6.0 documentada.


timeout

Tipo: entero (int64)
Obligatoria: no
Predeterminado:
InclusiveMaximum: 4294967295
InclusiveMinimum: 1

Tiempo de espera del servidor para realizar la operación en segundos. Este tiempo de espera especifica el tiempo que el cliente está dispuesto a esperar a que se complete la operación solicitada. El valor predeterminado para este parámetro es 60 segundos.


PropertyBatchDescriptionList

Tipo: PropertyBatchDescriptionList
Obligatoria: sí

Describe las operaciones por lotes de propiedades que se van a enviar.

Respuestas

Código de estado HTTP Descripción Esquema de respuesta
200 (OK) Una respuesta correcta significa que el lote de propiedades se realizó correctamente.
SuccessfulPropertyBatchInfo
409 (Conflicto) Una respuesta 409 significa que se produjo un error en una de las operaciones por lotes de propiedades y contiene más información sobre el error. Ninguna de las operaciones se confirmó.
FailedPropertyBatchInfo
Todos los demás códigos de estado Respuesta de error detallada.
FabricError

Ejemplos

Operación por lotes de propiedades

En este ejemplo se muestra cómo enviar un lote de propiedades. Este lote garantiza que existe una propiedad, comprueba que la propiedad tiene el número de secuencia esperado y edita la propiedad solo si las condiciones anteriores se realizan correctamente. A continuación, realiza una operación get para obtener la información actual de la propiedad. Si todas las operaciones se realizan correctamente, el lote se confirma de forma transaccional y se devuelve una respuesta correcta con el código de estado 200. Si se produce un error en el lote, se devuelve una respuesta con error con el código de estado 409. La respuesta con error siguiente muestra un error por lotes porque la propiedad no tiene el número de secuencia esperado.

Request

POST http://localhost:19080/Names/samples/apps/$/GetProperties/$/SubmitBatch?api-version=6.0
Cuerpo
{
  "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
    }
  ]
}

Respuesta 200

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

Respuesta 409

Cuerpo
{
  "Kind": "Failed",
  "ErrorMessage": "FABRIC_E_PROPERTY_CHECK_FAILED",
  "OperationIndex": "1"
}