ewebmachine v2.1.3 Ewebmachine.Core.Utils

HTTP utility module

Summary

Functions

HTTP Charset negociation, get the charset to use from

HTTP Encoding negociation, get the encoding to use from

HTTP Content negociation, get the content type to send from

Convert rfc1123 or rfc850 to :calendar dates

format a norm_content_type into an HTTP content type header

Match normalized media types accepting a partial match (wildcard or incomplete params)

get HTTP status label from HTTP code

convert any content type representation (see spec) into a norm_content_type

Remove quotes from HTTP quoted string

Convert a calendar date to a rfc1123 date string

Get the string list from a comma separated list of HTTP quoted strings

Types

norm_content_type()
norm_content_type() :: {type :: String.t, subtype :: String.t, params :: map}

Functions

choose_charset(charsets, acc_char_hdr)
choose_charset([String.t], String.t) :: String.t | nil

HTTP Charset negociation, get the charset to use from :

  • acc_char_hdr, the HTTP header Accept-Charset
  • charsets, the list of supported charsets
choose_encoding(encs, acc_enc_hdr)
choose_encoding([String.t], String.t) :: String.t | nil

HTTP Encoding negociation, get the encoding to use from :

  • acc_enc_hdr, the HTTP header Accept-Encoding
  • encs, the list of supported encoding
choose_media_type(ct_provided, accept_header)
choose_media_type([norm_content_type], String.t) ::
  norm_content_type |
  nil

HTTP Content negociation, get the content type to send from :

  • accept_header, the HTTP header Accept
  • ct_provided, the list of provided content types
convert_request_date(date)
convert_request_date(String.t) ::
  {{year :: integer, month :: integer, day :: integer}, {h :: integer, min :: integer, sec :: integer}} |
  :bad_date

Convert rfc1123 or rfc850 to :calendar dates

format_mtype(arg)
format_mtype(norm_content_type) :: String.t

format a norm_content_type into an HTTP content type header

fuzzy_mt_match(arg1, arg2)

Match normalized media types accepting a partial match (wildcard or incomplete params)

http_label(int)
http_label(code :: integer) :: String.t

get HTTP status label from HTTP code

normalize_mtype(mtype)
normalize_mtype({type :: String.t, params :: map} | type :: String.t | norm_content_type) :: norm_content_type

convert any content type representation (see spec) into a norm_content_type

quoted_string(value)

Remove quotes from HTTP quoted string

rfc1123_date(arg)
rfc1123_date({{year :: integer, month :: integer, day :: integer}, {h :: integer, min :: integer, sec :: integer}}) :: String.t

Convert a calendar date to a rfc1123 date string

split_quoted_strings(str)

Get the string list from a comma separated list of HTTP quoted strings