ondulação

Como usar dados de postagem cURL do arquivo

Como usar dados de postagem cURL do arquivo

cURL é um utilitário de linha de comando gratuito e de código aberto usado para transferir dados de ou para um host remoto com interação mínima do usuário. cURL funciona com protocolos primários como HTTP, FTP, SCP e SFTP.

Ele permite que os usuários façam upload e download de dados usando comandos únicos ou scripts bash. Ele também fornece recursos como autenticação de usuário, túnel de proxy, currículo de download, uploads baseados em formulários, certificados SSL e muito mais. É seguro dizer que cURL é mais do que um cliente HTTP.

Este tutorial irá guiá-lo através de uma funcionalidade cURL que permite aos usuários realizar solicitações de postagem HTTP usando dados de arquivo.

Antes de começarmos, deixe-me mencionar que este não é um guia para iniciantes do cURL; você precisa de um certo conhecimento prévio, especialmente conhecimento de protocolos de rede, solicitações HTTP e muito mais.

Antes de nos aprofundarmos no uso de cURL para realizar solicitações POST, vamos primeiro fazer a configuração.

Como instalar cURL

Na maioria dos casos, você encontrará o cURL instalado nas principais distribuições do Linux por padrão. Para confirmar que você tem cURL, use o comando

curl --help

Se você receber um erro:

-bash: curl: comando não encontrado

Você precisará instalá-lo antes de continuar.

Use o gerenciador de pacotes padrão para concluir a instalação, conforme mostrado nos comandos abaixo:

sudo apt-get update
sudo apt-get install curl -y

Antes de discutir como POSTAR dados de um arquivo com cURL, deixe-me falar brevemente sobre a solicitação POST. Como de costume, se você já estiver familiarizado com isso, sinta-se à vontade para pular; caso contrário, fique por perto.

Pedido cURL POST

A solicitação de postagem HTTP é um dos métodos de solicitação HTTP / HTTPS mais populares usados ​​para enviar dados a um host remoto para criar ou atualizar um recurso.

Agora:

Por favor, não confunda o método com PUT; embora sejam bastante semelhantes, eles têm suas diferenças.

Os dados enviados por meio de uma solicitação POST são armazenados principalmente no corpo da solicitação da solicitação HTTP.

Por exemplo, considere a solicitação POST abaixo que envia nome de usuário e senha, bem como seus valores.

POST / restrito / login.php HTTP / 1.1 Host: linuxhint.com Content-Type: application / x-www-form-urlencoded username = linuxhint & password = senha

Para enviar a solicitação POST acima usando cURL, podemos especificar os comandos como:

curl -x POST -d “nome de usuário = linuxhint & senha = senha” https: // linuxhint.com / restrito / login.php

No comando acima, usamos a opção -d para dizer ao cURL para incluir os cabeçalhos padrão, que é Content-Type: application / x-www-form-urlencoded

A opção -X especifica o método de solicitação HTTP a ser usado, neste caso, a solicitação HTTP POST.

cURL Especificar Tipo de Conteúdo

Em alguns casos, podemos querer especificar [explicitamente] o Content-Type ao enviar a solicitação. A entidade Content-Type no cabeçalho especifica o tipo de mídia do recurso que estamos enviando. O tipo de mídia também é comumente conhecido como tipo MIME.

Se você deseja aprender sobre os tipos de MIME, considere o recurso fornecido abaixo:

https: // linkfy.para / IANA-MIME-Types

Para especificar o Content-Type em uma solicitação cURL, podemos usar o sinalizador -H. Por exemplo, vamos enviar tipo MIME de aplicativo / JSON.

curl -X POST -d “nome de usuário”: “linuxhint”, “senha”: “senha” -H “Tipo de conteúdo: aplicativo / json” https: // linuxhint.com / restrito / login.php

O acima especifica que queremos enviar um objeto JSON para o URL fornecido. Você pode usar isso para ler os valores de um arquivo JSON ou enviá-lo como bruto.

Como ler dados de um arquivo

Suponha que você queira fazer solicitações na linha de comando usando cURL, mas tem os dados para enviar armazenados em um arquivo. Você pode usar o Content-Type para especificar o tipo de mídia e, em seguida, passar o caminho do arquivo que contém os dados. Para este exemplo, ilustrarei o uso de um objeto JSON.

O arquivo JSON (dados.json) contém os seguintes valores:


"username": "linuxhint",
"senha": "senha"

Para enviar esses dados de um arquivo JSON, podemos usar o -d e, em seguida, passar o nome do arquivo conforme mostrado no comando abaixo:

curl -X POST -H “Content-Type: application / json” -d “@data.json ”https: // linuxhint.com / restrito / login.php

Você também pode usar a opção -data-binary.

curl -X POST -H “Content-Type: application / json” --data-binary “@ / home / user / data.json ”https: // linuxhint.com / restrito / login.php

Você também pode usar um arquivo de texto para enviar os dados; tudo que você precisa especificar é o Content-Type como text / plain.

Por exemplo, um arquivo de texto (dados.txt) contendo os seguintes valores

nome de usuário = linuxhint & senha = senha

Usando o comando cURL, basta enviar a solicitação como:

curl -X POST -H “Content-Type: text / plain” -d “data.txt ”https: // linuxhint.com / restrito / login.php

Você pode usar outros tipos de arquivo, como XML, HTML e muitos mais.

Conclusão

Neste tutorial, discutimos como fazer solicitações POST e passar dados em vários formatos. É bom ter em mente que além de ser muito poderoso, cURL também é muito flexível. Ele pode combinar uma coleção de opções em um único comando para criar solicitações poderosas. Para obter mais informações, recomendo a documentação cURL, pois é bem escrita.

https: // curl.se / docs /

Obrigado por ler e divirta-se com cURL.

Mecanismos de jogos gratuitos e de código aberto para o desenvolvimento de jogos Linux
Este artigo cobrirá uma lista de mecanismos de jogo gratuitos e de código aberto que podem ser usados ​​para desenvolver jogos 2D e 3D no Linux. Exist...
Tutorial de Shadow of the Tomb Raider para Linux
Shadow of the Tomb Raider é a décima segunda adição à série Tomb Raider - uma franquia de jogos de ação e aventura criada pela Eidos Montreal. O jogo ...
Como aumentar o FPS no Linux?
FPS significa Quadros por segundo. A tarefa do FPS é medir a taxa de quadros em reproduções de vídeo ou desempenho de jogos. Em palavras simples, o nú...