CrowdHailer / Ace

HTTP web server and client, supports http1 and http2

Home Page:https://hex.pm/packages/ace

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Adopt Raxx Interface

CrowdHailer opened this issue · comments

Ace will be the first server to use the upgraded Raxx interface that supports streaming and preserves purity.

Request

Changes to the Raxx.Request to be HTTP/2 focused.

  • enforce all keys on the request struct and use constructor always when building
  • Rename host -> authority. it should include the port if specified.
  • Create function Raxx.Request.port/1 that will extract port from authority if present or else use default
  • Drop peer as a key it is part of the connection and not the request

Server callbacks

use Raxx.Server

def handle_request(request, state) do
   
end

def handle_fragment(data, state) do
end

def handle_trailers(trailers, state) do
end

def handle_info(message, state) do
end