http-message

Parse and create HTTP messages

message = %HTTPMessage{
method: :POST,
url: "/foo/bar",
body: "Hello, World!"
}
raw = HTTPMessage.create(message)
# Send it, or whatever.

Installation

Add to your Mixfile's dependencies:

{:http_message, "~> 0.1.0"}

Then do

Usage

HTTPMessage

The module is a struct used as a middleman for parsing and creating:

%HTTPMessage{
# Message header:
method: :PUT,
url: "/foo",
version: "HTTP/2.0",
fields: [
{"Content-Type", "application/json"}
],
# Message body:
body: "{ \"foo\": 123 }"
}

HTTPMessage.create(message)

Create string from HTTPMessage struct.

foo = %HTTPMessage{ method: :GET, url: "/foo" }
# Create string:
raw = HTTPMessage.create(foo)

HTTPMessage.parse(source)

Parse string into HTTPMessage struct

message = HTTPMessage.parse("""
GET /foo HTTP/1.1
Content-Type: text/html
<p>Hello, world!</p>
""")

License

MIT © Jamen Marz