API usando multipart/form-data ?

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

caputo
Usuário Nível 1
Usuário Nível 1
Mensagens: 23
Registrado em: 29 Out 2007 08:39
Localização: Olímpia/SP

API usando multipart/form-data ?

Mensagem por caputo »

Olá pesssoal

Estou tentando fazer uma comunicação com API onde na Documentação tenho que usar "Content-Type", "multipart/form-data"
Para enviar arquivo ( pdf ou xml )
FormData que não sei como proceder
Alguem já usou multipart/form-data ?
Poderia postar algum exemplo
Anexos
API DOCUMENTAÇÃO
API DOCUMENTAÇÃO
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

API usando multipart/form-data ?

Mensagem por alxsts »

Olá!

Exemplo em xBase parece difícil de encontrar... encontrei alguns em Visual Basic, usando esta busca no Google. Creio que sirva como base. Depois é só converter...
[]´s
Alexandre Santos (AlxSts)
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

API usando multipart/form-data ?

Mensagem por sygecom »

O https://chatgpt.com/ da isso fácil para você.

Código: Selecionar todos

#include "hbtip.ch"
#include "hbcurl.ch"

PROCEDURE Main()
    LOCAL cFile := "caminho_para_o_seu_arquivo.pdf"  // Substitua pelo caminho correto do PDF
    LOCAL cUrl := "https://api.chatbotmaster.com.br/api/envia_pdf"  // URL da API
    LOCAL oCurl := hb_CurlEasy()

    // Inicializar a biblioteca hbtip
    hbtipInit()

    // Configurar a requisição para enviar o arquivo PDF
    IF File( cFile )
        hb_CurlEasySetOpt( oCurl, HB_CURLOPT_URL, cUrl )
        hb_CurlEasySetOpt( oCurl, HB_CURLOPT_POST, .T. )
        hb_CurlEasySetOpt( oCurl, HB_CURLOPT_HTTPHEADER, { "Content-Type: multipart/form-data" } )

        // Preparar o arquivo para envio
        LOCAL cPostData := "file=@"+cFile  // Isto será ajustado dependendo do formato aceito pela API
        hb_CurlEasySetOpt( oCurl, HB_CURLOPT_POSTFIELDS, cPostData )

        // Executar a requisição
        LOCAL nResult := hb_CurlEasyPerform( oCurl )

        IF nResult == 0
            ? "Arquivo PDF enviado com sucesso!"
        ELSE
            ? "Erro ao enviar o PDF. Código de erro:", hb_CurlEasyErrno( oCurl )
        ENDIF
    ELSE
        ? "Arquivo PDF não encontrado."
    ENDIF

    // Liberar recursos
    hb_CurlEasyCleanup( oCurl )
    hbtipUnInit()
RETURN
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
caputo
Usuário Nível 1
Usuário Nível 1
Mensagens: 23
Registrado em: 29 Out 2007 08:39
Localização: Olímpia/SP

API usando multipart/form-data ?

Mensagem por caputo »

Leandro muito obrigado pela ajuda por sua informação tive sucesso !!!!

Usando o exemplo que vc passou e tambem usando o https://chatgpt.com/
Anexos
API.TXT
(1.69 KiB) Baixado 67 vezes
SOSSOFT
Usuário Nível 3
Usuário Nível 3
Mensagens: 118
Registrado em: 23 Out 2024 10:04

API usando multipart/form-data ?

Mensagem por SOSSOFT »

Eu meio que aprendi PHP usando ChatGPT, mas não espere demais dele pois tem que ir conferindo, já notei que cada vez que faço a mesma pergunta ele responde algo diferente, daí tem que escolher o que melhor cabe no seu caso.
Responder