httpd_util
MODULE
MODULE SUMMARY
DESCRIPTION
This module provides the Erlang Web Server API module programmer with miscellaneous utility functions.
EXPORTS
convert_request_date(DateString) -> ErlDate|bad_date
Types:
convert_request_date/1 converts DateString to the Erlang date format. DateString must be in one of the three date formats that is defined in the RFC 2616.
Types:
create_etag/1 calculates the Etag for a file, from its size and time for last modification. fileinfo is a record defined in kernel/include/file.hrl
decode_hex(HexValue) -> DecValue
Types:
day(NthDayOfWeek) -> DayOfWeek
Types:
day/1 converts the day of the week (NthDayOfWeek) as an integer (1-7) to an abbreviated string, that is:
1 = "Mon", 2 = "Tue", ..., 7 = "Sat".
flatlength(NestedList) -> Size
Types:
hexlist_to_integer(HexString) -> Number
Types:
integer_to_hexlist(Number) -> HexString
Types:
lookup(ETSTable,Key) -> Result
lookup(ETSTable,Key,Undefined) -> Result
Types:
lookup extracts {Key,Value} tuples from ETSTable and returns the Value associated with Key. If ETSTable is of type bag only the first Value associated with Key is returned. lookup/2 returns undefined and lookup/3 returns Undefined if no Value is found.
lookup_mime(ConfigDB,Suffix)
lookup_mime(ConfigDB,Suffix,Undefined) -> MimeType
Types:
lookup_mime returns the mime type associated with a specific file suffix as specified in the mime.types file (located in the config directory).
lookup_mime_default(ConfigDB,Suffix)
lookup_mime_default(ConfigDB,Suffix,Undefined) -> MimeType
Types:
lookup_mime_default returns the mime type associated with a specific file suffix as specified in the mime.types file (located in the config directory). If no appropriate association can be found the value of DefaultType is returned.
message(StatusCode,PhraseArgs,ConfigDB) -> Message
Types:
message/3 returns an informative HTTP 1.1 status string in HTML. Each StatusCode requires a specific PhraseArgs:
- 301
- string(): A URL pointing at the new document position.
- 400 | 401 | 500
- none (No PhraseArgs)
- 403 | 404
- string(): A Request-URI as described in RFC 2616.
- 501
- {Method,RequestURI,HTTPVersion}: The HTTP Method, Request-URI and HTTP-Version as defined in RFC 2616.
- 504
- string(): A string describing why the service was unavailable.
Types:
month/1 converts the month NthMonth as an integer (1-12) to an abbreviated string, that is:
1 = "Jan", 2 = "Feb", ..., 12 = "Dec".
multi_lookup(ETSTable,Key) -> Result
Types:
multi_lookup extracts all {Key,Value} tuples from an ETSTable and returns allValues associated with the Key in a list.
reason_phrase(StatusCode) -> Description
Types:
reason_phrase returns the Description of an HTTP 1.1 StatusCode, for example 200 is "OK" and 201 is "Created". Read RFC 2616 for further information.
rfc1123_date() -> RFC1123Date
rfc1123_date({{YYYY,MM,DD},{Hour,Min,Sec}}) -> RFC1123Date
Types:
rfc1123_date/0 returns the current date in RFC 1123 format. rfc_date/1 converts the date in the Erlang format to the RFC 1123 date format.
split(String,RegExp,N) -> SplitRes
Types:
split/3 splits the String in N chunks using the RegExp. split/3 is is equivalent to regexp:split/2 with one exception, that is N defines the number of maximum number of fields in the FieldList.
split_script_path(RequestLine) -> Splitted
Types:
split_script_path/1 is equivalent to split_path/1 with one exception. If the longest possible path is not a regular, accessible and executable file not_a_script is returned.
split_path(RequestLine) -> {Path,QueryStringOrPathInfo}
Types:
split_path/1 splits the RequestLine in a file reference (Path) and a QueryString or a PathInfo string as specified in RFC 2616. A QueryString is isolated from the Path with a question mark (?) and PathInfo with a slash (/). In the case of a QueryString, everything before the ? is a Path and everything after a QueryString. In the case of a PathInfo the RequestLine is scanned from left-to-right on the hunt for longest possible Path being a file or a directory. Everything after the longest possible Path, isolated with a /, is regarded as PathInfo. The resulting Path is decoded using decode_hex/1 before delivery.
Types:
strip/1 removes any leading or trailing linear white space from the string. Linear white space should be read as horizontal tab or space.
Types:
suffix/1 is equivalent to filename:extension/1 with one exception, that is Suffix is returned without a leading dot (.).