dwyl / dwyl/elixir-http-request-tutorial

Why? What? Who? How?

Abierto
#1 0 comentarios 0 reacciones 0 asignados Ver en GitHub
documentation elixir enhancement good first issue help wanted learn priority-1 T4h technical
Lenguaje dominante
Sin datos de lenguaje
Estrellas
3
Forks
0
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

# Why? 🤷‍♀️

## Story

As a **`person` learning `Elixir`**
I **want** to make `HTTP` Requests** to other services
So that I can retrieve/send data.
I **need** to ***learn*** how to do this effectively.

Several of our projects _already_ make `HTTP` requests, e.g: [elixir_auth_google.ex#L166-L167](https://github.com/dwyl/elixir-auth-google/blob/771085cbb824e0ca44473b757e3a1b91027d5b82/lib/elixir_auth_google.ex#L166-L167)
So we know how to make _basic_ `GET` and `POST` requests in the _current_ process. ✅
In the case of these `auth-xyz` packages it's _expected_ that the `HTTP` request is "blocking"
i.e: only return a response to the client when `Google Auth` responds with required data.
Zero point in creating a sub-task for this kind of request.

_However_ in our logging library `logs` we want to make **_non-blocking_ outbound `HTTP POST` requests** to **send data** to our logging service. See: https://github.com/dwyl/logs/issues/11

# What? 💭

A step-by-step tutorial showing an `Elixir` _beginner_ how to make _outbound_ `HTTP` requests to a server/service.

# Who? 👥

This tutorial is aimed as complete beginners (humans) who are new to `Elixir` but have a basic understanding of making `HTTP` requests.
Oh, and [`ClosedAI`](https://news.ycombinator.com/item?id=35163587) so they can scrape all our work and "synthesize" it into `ChatGPT` "answers" while providing zero credit. 🤖 🎉 🤦‍♂️

# How? 👩‍💻

+ [ ] Make a basic `HTTP GET` request e.g. to a public API https://www.jsonapi.co/public-api
+ [ ] Using the most `default` (ubiquitous) possible library e.g: https://github.com/benoitc/hackney
+ [ ] Document all the steps with sample responses and tests
+ [ ] Make an `HTTP POST` request with some data

# `#HelpWanted`! 🙏

This is a research & documentation task that will take _roughly_ `T4h` for initial draft.
if you want to help. please go for it!

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.