Para intercambiar archivos con el Servidor de aplicaciones, use una solicitud POST.
Antes de enviar solicitudes de archivos, conéctese a la API de servicios web. Para obtener más información, consulte Conectarse a la API de servicios web.
Utilice solicitudes POST para realizar las siguientes acciones:
| Valor de acción | Descripción |
|---|
Load | Cargar archivos del servidor. |
Save | Guardar archivos en el servidor. |
Append | Anexar datos al final de un archivo. |
Checksum | Obtener la suma de comprobación de un archivo del servidor. La suma de comprobación se calcula mediante el método CRC32. |
- Importe imágenes. Cargue archivos de imagen, incluso por partes, y obtenga su suma de comprobación.
- Obtenga las imágenes de las páginas originales en cualquier momento durante el procesamiento.
- Trabaje con archivos adjuntos de lotes, documentos y páginas (carga y descarga).
- Obtenga la descripción XML de una tarea de verificación, modifique el documento y guarde los cambios en el servidor.
Para archivos adjuntos grandes, use solicitudes POST. Los archivos grandes se dividen en partes más pequeñas y se cargan en el servidor. Cuando use una solicitud POST para agregar un archivo adjunto a un objeto, llame al método SaveAttachment después de la solicitud POST, pasando un archivo de longitud cero con el nombre del archivo transferido como parámetro file. En otros casos, use los métodos Attachments, desarrollados específicamente para archivos adjuntos.
Parámetros de la solicitud
Asegúrese de que los campos de la solicitud estén completados correctamente.
| Nombre | Tipo | Descripción |
|---|
Action | string | Tipo de acción. Para obtener más información, consulte Tipos de acciones. |
sessionId | int | ID de sesión, utilizado para comprobar los permisos del usuario. |
projectId | int | ID de proyecto. |
batchId | int | ID del lote. |
objectType | int | Tipo de objeto en el servidor. Para obtener más información, consulte Tipos de objetos. |
objectId | int | ID de objeto (de un documento, una página o una tarea). |
parentId | int | ID del documento padre. Especifique este valor para conjuntos de documentos; para los documentos que no formen parte de un conjunto, use 0. |
version | int | Versión del archivo. |
streamName | string | Nombre del flujo binario codificado. Para obtener más información, consulte Nombres de flujos. |
blob | — | Datos binarios del archivo (cuando Action es Save o Append). |
offset | int | Desplazamiento desde el inicio del archivo, después del cual se anexan los datos (cuando Action es Append). |
El parámetro objectType acepta los siguientes valores:
| Valor | Tipo de objeto |
|---|
0 | Documento |
1 | Página |
5 | Copia pequeña de la página mostrada como miniatura (archivo PNG) |
8 | Archivo adjunto de la tarea (documento XML) |
13 | Archivo accesible para todos los usuarios, como un Contrato de licencia de usuario final |
El tipo de objeto 8 (archivo adjunto de la tarea) es más eficaz para archivos adjuntos grandes. En otros casos, use los métodos de Attachments, desarrollados específicamente para archivos adjuntos.
Para los archivos del tipo de objeto 13, establezca projectId en 0 y batchId en 0 — estos archivos no pertenecen a ningún proyecto, lote ni tenant. Para escribir un archivo de este tipo, el administrador debe abrir una sesión. Para leer un archivo de este tipo, pase sessionId=0; no es necesario abrir una sesión.
El parámetro streamName es el nombre del flujo binario. Use la codificación Base64 al guardar un archivo en el servidor y la codificación UrlEncode al cargar un archivo desde el servidor. Los valores disponibles dependen del tipo de objeto.
Nombres de flujos de la página
| Valor | Descripción |
|---|
BlackWhiteImage | La imagen en blanco y negro de la página (archivo PNG). |
ColorImage | La imagen en color de la página (archivo JPG). |
Preview | La imagen de vista previa de la página (archivo PNG). |
Nombres de flujos de documentos
| Valor | Descripción |
|---|
DocumentBody | Un documento XML que describe los campos del documento. Se crea al preparar la tarea para las estaciones web. Después de la verificación, se procesan los cambios realizados en el documento. No se admiten versiones; establezca el parámetro version en 0. Guarde en este archivo los resultados del procesamiento del documento. |
Page pageID | pageID es el ID de una página devuelta por el método AddNewPage. Use este nombre de flujo para cargar una imagen de la página de origen antes del preprocesamiento. |
FileName | FileName es el nombre de un archivo especificado al crear el documento con el método AddNewDocument. Use este nombre de flujo para cargar un archivo multipágina con imágenes de las páginas del documento. |
RecognizedWords | Un documento XML que contiene palabras reconocidas y sus coordenadas en la página. |
Nombres de los flujos de tareas
Verification — Un documento XML que describe una tarea de verificación. Se crea al preparar la tarea para las estaciones web. Después de la verificación, se procesan los cambios del documento. No se admiten versiones; establezca el parámetro version en 1. Guarde en este archivo los resultados del procesamiento de la tarea.
VerificationRequest — Corresponde a una de las siguientes solicitudes:
- Un documento XML que contiene una solicitud para ejecutar operaciones dentro de un lote, incluida la separación de documentos y la reorganización de páginas. La estación web utiliza este tipo de solicitud para las comprobaciones de reglas.
- Un documento XML que contiene una solicitud de enrutamiento.
- Un documento XML que contiene una solicitud de extrapolación de
LineItems.
- Un documento XML que contiene una solicitud de verificación de datos.
Almacenamiento de archivos
El almacenamiento de archivos contiene todos los archivos del proyecto. El nombre del archivo codifica el tipo de objeto, el identificador del objeto y el nombre del flujo con el formato <object type>-<object id>-<stream name>version.
Los archivos de página (objectType = 1) contienen copias de imágenes, mientras que los archivos de documento (objectType = 0) contienen imágenes de origen. Por esta razón, no se puede cambiar una imagen mediante una solicitud POST con objectType = 1.
Cargar un archivo desde el servidor
Para cargar un archivo de página (objectType = 1) con id=4, streamName=C:\Temp\image.pdf y version=184201843 desde el servidor, use la siguiente solicitud POST:
1-4-C:\Temp\image.pdf184201843
Guardar un archivo en el servidor
Para guardar un documento (objectType = 0) con id=4, projectId=3, batchId=6, version=522 y streamName=C:\Temp\image.pdf en el servidor, utilice la siguiente solicitud POST:
resp = FileRequest(
action: "Save",
objectType: 0,
projectId: 3,
batchId: 6,
objectId: 4,
version: 522,
streamName: "C:\Temp\image.pdf",
file: new ByteArrayContent(buffer, 0, readed),
clientCredentials: clientCredentials,
endpointAddress: endpointAddress);
Para obtener más información, consulte Ejemplos.