Todos los productos
Search
Centro de documentos

DataWorks:HttpFile

Última actualización: Sep 06, 2026

DataWorks Data Integration descarga archivos de endpoints HTTP remotos mediante el protocolo HTTP y los sincroniza con una fuente de datos de destino.

Grupos de recursos compatibles

HttpFile admite los grupos de recursos que se muestran a continuación:

Tipos de campo compatibles

Tipo de dato

Descripción

STRING

Texto.

LONG

Entero.

BYTES

Matriz de bytes. El contenido de texto se convierte en una matriz de bytes codificada en UTF-8.

BOOL

Booleano.

DOUBLE

Decimal.

DATE

Fecha y hora. Formatos compatibles: yyyy-MM-dd HH:mm:ss, yyyy-MM-dd, HH:mm:ss.

Formatos de archivo y compresión compatibles

Formato de archivo

Compatible

CSV

Sí

TEXT (delimitado)

Sí

JSON

Sí

JSONL

Sí

Compresión

Compatible

gzip

Sí

bzip2

Sí

zip

Sí

skipHeader no es compatible con archivos comprimidos.

Agregar una fuente de datos

Agregue la fuente de datos HttpFile en la página Data Source Management antes de crear una tarea de sincronización. Para obtener instrucciones, consulte Administración de fuentes de datos.

Configure una tarea de sincronización

Configure una tarea de sincronización sin conexión

Use la interfaz sin código o el editor de código y configure su tarea:

Para consultar la referencia completa del script y las descripciones de los parámetros, consulte Referencia del script.

Referencia del script

Ejemplo de script del lector

El script que se muestra a continuación lee desde un archivo CSV por HTTP mediante GET, omite la fila de encabezado y asigna cinco columnas a distintos tipos de datos.

{
  "type": "job",
  "version": "2.0",
  "steps": [
    {
      "stepType": "httpfile",
      "parameter": {
        "datasource": "<data-source-name>",
        "fileName": "/data/export.csv",
        "requestMethod": "GET",
        "requestHeaders": {
          "Authorization": "Bearer <token>"
        },
        "socketTimeoutSeconds": 3600,
        "connectTimeoutSeconds": 60,
        "bufferByteSizeInKB": 1024,
        "fileFormat": "csv",
        "encoding": "utf-8",
        "fieldDelimiter": ",",
        "skipHeader": true,
        "compress": "",
        "column": [
          { "index": 0, "type": "long" },
          { "index": 1, "type": "boolean" },
          { "index": 2, "type": "double" },
          { "index": 3, "type": "string" },
          { "index": 4, "type": "date" }
        ]
      },
      "name": "Reader",
      "category": "reader"
    },
    {
      "stepType": "stream",
      "parameter": {},
      "name": "Writer",
      "category": "writer"
    }
  ],
  "setting": {
    "errorLimit": {
      "record": "0"
    },
    "speed": {
      "concurrent": 1
    }
  },
  "order": {
    "hops": [
      {
        "from": "Reader",
        "to": "Writer"
      }
    ]
  }
}

Reemplace los marcadores de posición con sus valores reales:

Marcador de posición

Descripción

Ejemplo

<data-source-name>

El nombre de la fuente de datos HttpFile en la página Data Source Management.

my-http-source

<token>

Su token de autenticación de API.

eyJhbGc...

Parámetros del lector

Los parámetros se agrupan por función. Los parámetros de conexión definen cómo llegar al endpoint; los parámetros de comportamiento de lectura determinan cómo se analiza el archivo.

Parámetros de conexión

Parámetro

Descripción

Obligatorio

Predeterminado

datasource

Nombre de la fuente de datos HttpFile. Debe coincidir exactamente con el nombre de la página Data Source Management.

Sí

Ninguna

fileName

Ruta del archivo en el servidor HTTP. Codifique en URL cualquier carácter especial o no ASCII. Por ejemplo, un espacio en /file/test abc.csv se convierte en /file/test%20abc.csv. La URL final de la solicitud combina la URL base de la fuente de datos con esta ruta. Para conocer las reglas de codificación, consulte Referencia de codificación de URL de HTML.

Sí

Ninguna

requestMethod

Método HTTP. Valores válidos: GET, POST, PUT.

No

GET

requestParam

Parámetros de consulta que se agregan a la URL. Solo surten efecto cuando requestMethod es GET. Codifique en URL cualquier carácter especial. Por ejemplo, start=2024-03-25 17:06:54 se convierte en start=2024-03-25%2017:06:54.

No

Ninguna

requestBody

Cuerpo de la solicitud. Solo surte efecto cuando requestMethod es POST o PUT. Combínelo con Content-Type en requestHeaders. Ejemplo: {"requestBody": "{\"a\":\"b\"}", "requestHeaders": {"Content-Type": "application/json"}}

No

Ninguna

requestHeaders

Encabezados de solicitud HTTP como pares clave-valor. Ejemplo: {"Content-Type": "application/json"}

No

{"User-Agent": "DataX Http File Reader"}

connectTimeoutSeconds

Tiempo de espera al establecer una conexión HTTP, en segundos. Si se excede, la tarea falla. Disponible solo en modo avanzado; no se puede configurar en la interfaz sin código.

No

60

socketTimeoutSeconds

Tiempo de espera entre paquetes de datos consecutivos, en segundos. Si se excede, la tarea falla. Disponible solo en modo avanzado; no se puede configurar en la interfaz sin código.

No

3600

bufferByteSizeInKB

Tamaño del búfer de descarga, en KB.

No

1024

Parámetros de comportamiento de lectura

Parámetro

Descripción

Obligatorio

Predeterminado

fileFormat

Formato del archivo de origen. Valores válidos: csv, text, json, jsonl. Los cuatro formatos admiten delimitadores de campo personalizados.

No

Ninguna

encoding

Codificación de caracteres del archivo.

No

utf-8

fieldDelimiter

Delimitador de campo. Para caracteres no imprimibles, use la representación Unicode; por ejemplo, \u001b.

Sí

,

useMultiCharDelimiter

Indica si el delimitador de campo es una cadena de varios caracteres.

No

false

lineDelimiter

Delimitador de línea. Solo surte efecto cuando fileFormat es text.

No

Ninguna

skipHeader

Indica si se omite la primera fila. Establézcalo en true para archivos con fila de encabezado. No es compatible con archivos comprimidos.

No

false

compress

Formato de compresión del archivo de origen. Déjelo en blanco si el archivo no está comprimido. Valores válidos: gzip, bzip2, zip.

No

Ninguna (sin comprimir)

column

Lista de columnas que se leerán. Cada entrada requiere type. Para el formato CSV/TEXT, especifique index o value. Para el formato JSON/JSONL, especifique jsonPath o value. Consulte Configuración de columnas.

Sí

Todas las columnas se leen como STRING

nullFormat

Cadena en el archivo de origen que representa un valor nulo. Por ejemplo, "nullFormat": "null" trata la cadena null como nula; "nullFormat": "\u0001" trata el carácter no imprimible como nulo. Si no se establece, los datos de origen se escriben en el destino tal cual.

No

Ninguna

Configuración de columnas

Cada entrada de la matriz column usa los campos que se describen a continuación:

Campo

Descripción

type

Tipo de dato de la columna. Obligatorio. Valores válidos: long, boolean, double, string, date.

index

Posición de la columna en el archivo de origen, a partir de 0. Disponible para el formato CSV/TEXT. Especifique index o value, pero no ambos.

jsonPath

Expresión JSONPath que se usa para extraer campos de los datos de origen. Disponible para el formato JSON/JSONL. Especifique jsonPath o value, pero no ambos.

value

Valor constante para rellenar la columna, en lugar de leer del archivo de origen.

Para leer todas las columnas como STRING sin especificar tipos individuales:

"column": ["*"]

Para asignar columnas específicas con tipos e insertar una constante (formato CSV/TEXT):

// CSV/TEXT format
"column": [
  { "type": "long", "index": 0 },
  { "type": "string", "value": "alibaba" }
]

Para extraer campos mediante expresiones JSONPath (formato JSON/JSONL):

// JSON/JSONL format
"column": [
  { "name": "id", "jsonPath": "$.id", "type": "LONG" },
  { "name": "name", "jsonPath": "$.user.name", "type": "STRING" },
  { "name": "source", "value": "httpfile", "type": "STRING" }
]

Pasos siguientes