vanderleipinto / test_app

0 stars 0 forks source link

HTTParty #34

Closed vanderleipinto closed 7 months ago

vanderleipinto commented 7 months ago

A gem HTTParty é uma biblioteca em Ruby que simplifica o consumo de APIs HTTP. Ela fornece uma interface fácil de usar para fazer requisições HTTP e lidar com respostas.

Com a HTTParty, você pode fazer requisições HTTP GET, POST, PUT, DELETE e outras, além de configurar cabeçalhos, parâmetros de consulta e corpo da requisição de forma simples e direta.

Alguns recursos e funcionalidades importantes da HTTParty incluem:

  1. Simplicidade de uso: A HTTParty é fácil de usar e oferece uma API intuitiva para fazer requisições HTTP. Você pode fazer uma requisição simples com apenas algumas linhas de código.

  2. Suporte a vários formatos de resposta: A HTTParty pode lidar com diferentes formatos de resposta, como JSON, XML, HTML, etc., e fazer a desserialização automática dos dados retornados pela API.

  3. Gerenciamento de sessões: A HTTParty permite que você gerencie sessões HTTP, mantendo cookies e outros dados de sessão entre várias requisições.

  4. Configuração flexível: Você pode configurar opções globais para todas as requisições HTTP feitas com a HTTParty, como timeout, cabeçalhos padrão, autenticação, etc.

  5. Suporte a SSL: A HTTParty suporta conexões seguras HTTPS e pode lidar com certificados SSL automaticamente.

Em resumo, a gem HTTParty é uma ferramenta poderosa e versátil para lidar com requisições HTTP em Ruby, facilitando o consumo de APIs e o desenvolvimento de aplicativos que interagem com serviços web.

vanderleipinto commented 7 months ago

Instalação no arquivo Gemfile

gem 'httparty'

Vamos criar um arquivo de teste: spec/httparty/httparty_spec.rb

describe 'HTTParty' do

  it 'HTTParty' do
    response = HTTParty.get('http://jsonplaceholder.typicode.com/posts/2')
    content_type = response.headers["content-type"]

    expect(content_type).to match(/application\/json/)
  end

end

Aqui ele faz uma requisição, recebe uma resposta e verificamos no header se o content-type corresponde a 'aplication/json'.