Skip to content
/ httpc Public
forked from gleam-lang/httpc

📡 Make requests to HTTP servers with httpc

License

Notifications You must be signed in to change notification settings

vstreame/httpc

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

httpc

GitHub release Discord chat CI

Bindings to Erlang's built in HTTP client, httpc.

Note: HTTPC does not verify TLS connections by default. Your connection may not be secure with this library.

import gleam/httpc
import gleam/http.{Get}
import gleeunit/should

pub fn main() {
  // Prepare a HTTP request record
  let req = http.default_req()
    |> http.set_method(Get)
    |> http.set_host("test-api.service.hmrc.gov.uk")
    |> http.set_path("/hello/world")
    |> http.prepend_req_header("accept", "application/vnd.hmrc.1.0+json")

  // Send the HTTP request to the server
  try resp = httpc.send(req)

  // We get a response record back
  resp.status
  |> should.equal(200)

  resp
  |> http.get_resp_header("content-type")
  |> should.equal(Ok("application/json"))

  resp.body
  |> should.equal("{\"message\":\"Hello World\"}")

  Ok(resp)
}

Installation

gleam add gleam_httpc

About

📡 Make requests to HTTP servers with httpc

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Gleam 100.0%