Todos os produtos
Search
Central de documentação

DataWorks:HttpFile

Última atualização: Sep 06, 2026

O DataWorks Data Integration baixa arquivos de endpoints HTTP remotos pelo protocolo HTTP e os sincroniza com uma source de dados de destino.

Grupos de recursos compatíveis

O HttpFile é compatível com os seguintes grupos de recursos:

Tipos de campo compatíveis

Tipo de dado

Descrição

STRING

Texto.

LONG

Inteiro.

BYTES

Array de bytes. O conteúdo textual é convertido em um array de bytes codificado em UTF-8.

BOOL

Booleano.

DOUBLE

Decimal.

DATE

Data e hora. Formatos aceitos: yyyy-MM-dd HH:mm:ss, yyyy-MM-dd, HH:mm:ss.

Formatos de arquivo e compressão compatíveis

Formato de arquivo

Compatível

CSV

Sim

TEXT (delimitado)

Sim

JSON

Sim

JSONL

Sim

Compressão

Compatível

gzip

Sim

bzip2

Sim

zip

Sim

Arquivos compactados não aceitam skipHeader.

Adicionar uma source de dados

Adicione a source de dados HttpFile na página Data Source Management antes de criar a tarefa de sincronização. Para obter instruções, consulte Gerenciamento de fontes de dados.

Configure uma tarefa de sincronização

Configure uma tarefa de sincronização offline

Use a interface visual sem código ou o editor de código para configure sua tarefa:

Para consultar a referência completa do script e as descrições dos parâmetros, veja Referência de script.

Referência de script

Exemplo de script do Reader

O script a seguir lê um arquivo CSV via HTTP usando GET, ignora a linha de cabeçalho e mapeia cinco colunas para diferentes tipos de dados.

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

Substitua os placeholders pelos valores reais:

Placeholder

Descrição

Exemplo

<data-source-name>

Nome da source de dados HttpFile na página Data Source Management.

my-http-source

<token>

Seu token de autenticação de API.

eyJhbGc...

Parâmetros do Reader

Os parâmetros estão agrupados por função. Os parâmetros de conexão definem como alcançar o endpoint; os de comportamento de leitura controlam a análise do arquivo.

Parâmetros de conexão

Parâmetro

Descrição

Obrigatório

Padrão

datasource

Nome da source de dados HttpFile. Deve corresponder exatamente ao nome exibido na página Data Source Management.

Sim

Nenhum

fileName

Caminho do arquivo no servidor HTTP. Codifique caracteres especiais ou não ASCII na URL. Por exemplo, um espaço em /file/test abc.csv torna-se /file/test%20abc.csv. A URL final da requisição combina a URL base da source de dados com este caminho. Para regras de codificação, consulte Referência de codificação de URL HTML.

Sim

Nenhum

requestMethod

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

Não

GET

requestParam

Parâmetros de consulta anexados à URL. Têm efeito apenas quando requestMethod é GET. Codifique quaisquer caracteres especiais na URL. Por exemplo, start=2024-03-25 17:06:54 torna-se start=2024-03-25%2017:06:54.

Não

Nenhum

requestBody

Corpo da requisição. Aplicável somente se requestMethod for POST ou PUT. Use em conjunto com Content-Type em requestHeaders. Exemplo: {"requestBody": "{\"a\":\"b\"}", "requestHeaders": {"Content-Type": "application/json"}}

Não

Nenhum

requestHeaders

Cabeçalhos de requisição HTTP como pares chave-valor. Exemplo: {"Content-Type": "application/json"}

Não

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

connectTimeoutSeconds

Tempo máximo de espera para estabelecer uma conexão HTTP, em segundos. A tarefa falha se esse limite for excedido. Disponível apenas no modo Avançado; não configurável pela interface visual.

Não

60

socketTimeoutSeconds

Tempo máximo de espera entre pacotes de dados consecutivos, em segundos. A tarefa falha caso o tempo seja ultrapassado. Disponível apenas no modo Avançado; não configurável pela interface visual.

Não

3600

bufferByteSizeInKB

Tamanho do buffer de baixe, em KB.

Não

1024

Parâmetros de comportamento de leitura

Parâmetro

Descrição

Obrigatório

Padrão

fileFormat

Formato do arquivo de origem. Valores válidos: csv, text, json, jsonl. Todos os quatro formatos aceitam delimitadores de campo personalizados.

Não

Nenhum

encoding

Codificação de caracteres do arquivo.

Não

utf-8

fieldDelimiter

Delimitador de campo. Para caracteres não imprimíveis, use a representação Unicode, por exemplo \u001b.

Sim

,

useMultiCharDelimiter

Defina se o delimitador de campo é uma string com múltiplos caracteres.

Não

false

lineDelimiter

Delimitador de linha. Aplicável apenas quando fileFormat é text.

Não

Nenhum

skipHeader

Indica se a primeira linha deve ser ignorada. Defina como true para arquivos com linha de cabeçalho. Incompatível com arquivos compactados.

Não

false

compress

Formato de compressão do arquivo de origem. Deixe em branco se o arquivo não estiver compactado. Valores válidos: gzip, bzip2, zip.

Não

Nenhum (sem compressão)

column

Lista de colunas a serem lidas. Cada entrada exige type. No formato CSV/TEXT, especifique index ou value. No formato JSON/JSONL, use jsonPath ou value. Consulte Configuração de colunas.

Sim

Todas as colunas lidas como STRING

nullFormat

String no arquivo de origem que representa um valor nulo. Por exemplo, "nullFormat": "null" trata a string null como nula; "nullFormat": "\u0001" trata o caractere não imprimível como nulo. Se não definido, os dados de origem são gravados no destino tal como estão.

Não

Nenhum

Configuração de colunas

Cada entrada no array column usa os seguintes campos:

Campo

Descrição

type

Tipo de dado da coluna. Obrigatório. Valores válidos: long, boolean, double, string, date.

index

Posição da coluna no arquivo de origem, iniciando em 0. Disponível para o formato CSV/TEXT. Especifique index ou value, mas não ambos.

jsonPath

Expressão JSONPath usada para extrair campos dos dados de origem. Disponível para o formato JSON/JSONL. Especifique jsonPath ou value, mas não ambos.

value

Valor constante para preencher a coluna, em vez de ler do arquivo de origem.

Para ler todas as colunas como STRING sem especificar tipos individuais:

"column": ["*"]

Para mapear colunas específicas com tipos e injetar uma constante (formato CSV/TEXT):

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

Para extrair campos usando expressões 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" }
]

Próximos passos