Writing an HTTP server package
Let’s create a new goldcrest
folder for all Goldcrest-related code, examples, and packages. Inside goldcrest
, we can create our web server package by running the following command:
$ mix new goldcrest_http_server
Let’s now define the Goldcrest.HTTPServer
module, which will be our main web server module:
lib/goldcrest_http_server.ex
defmodule Goldcrest.HTTPServer do @moduledoc """ Starts a HTTP server on the given port This server also logs all requests """ require Logger @server_options [ active: false, packet: :http_bin, reuseaddr: true ] def start(port) do case :gen_tcp.listen(port, @server_options) do {:ok, sock} -> Logger...