From 4fde6cba94f4ae65b6434aa722c08c60066f67d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Fri, 31 May 2013 18:31:28 +0200 Subject: In content-types, the charset parameter is converted to lowercase We know this specific parameter is case insensitive so we automatically lowercase it to make things simpler to the developer. --- manual/cowboy_req.md | 9 +++++---- manual/cowboy_rest.md | 8 ++++++-- 2 files changed, 11 insertions(+), 6 deletions(-) (limited to 'manual') diff --git a/manual/cowboy_req.md b/manual/cowboy_req.md index f10120a..8a765dc 100644 --- a/manual/cowboy_req.md +++ b/manual/cowboy_req.md @@ -176,7 +176,7 @@ Request related exports > | accept-language | `[{LanguageTag, Quality}]` | > | authorization | `{AuthType, Credentials}` | > | content-length | `non_neg_integer()` | -> | content-type | `{Type, SubType, Params}` | +> | content-type | `{Type, SubType, ContentTypeParams}` | > | cookie | `[{binary(), binary()}]` | > | expect | `[Expect | {Expect, ExpectValue, Params}]` | > | if-match | `'*' | [{weak | strong, OpaqueTag}]` | @@ -192,7 +192,7 @@ Request related exports > Types for the above table: > * Type = SubType = Charset = Encoding = LanguageTag = binary() > * AuthType = Expect = OpaqueTag = Unit = binary() -> * Params = [{binary(), binary()}] +> * Params = ContentTypeParams = [{binary(), binary()}] > * Quality = 0..1000 > * AcceptExt = [{binary(), binary()} | binary()] > * Credentials - see below @@ -201,8 +201,9 @@ Request related exports > The cookie names and values, the values of the sec-websocket-protocol > and x-forwarded-for headers, the values in `AcceptExt` and `Params`, > the authorization `Credentials`, the `ExpectValue` and `OpaqueTag` -> are case sensitive. All other values are case insensitive and -> will be returned as lowercase. +> are case sensitive. All values in `ContentTypeParams` are case sensitive +> except the value of the charset parameter, which is case insensitive. +> All other values are case insensitive and will be returned as lowercase. > > The headers accept, accept-encoding and cookie headers can return > an empty list. Others will return `{error, badarg}` if the header diff --git a/manual/cowboy_rest.md b/manual/cowboy_rest.md index 4891d9d..110e224 100644 --- a/manual/cowboy_rest.md +++ b/manual/cowboy_rest.md @@ -168,7 +168,9 @@ REST callbacks description > Cowboy will select the most appropriate content-type from the list. > If any parameter is acceptable, then the tuple form should be used > with parameters set to `'*'`. If the parameters value is set to `[]` -> only content-type values with no parameters will be accepted. +> only content-type values with no parameters will be accepted. All +> parameter values are treated in a case sensitive manner except the +> `charset` parameter, if present, which is case insensitive. > > This function will be called for POST, PUT and PATCH requests. > It is entirely possible to define different callbacks for different @@ -219,7 +221,9 @@ REST callbacks description > Cowboy will select the most appropriate content-type from the list. > If any parameter is acceptable, then the tuple form should be used > with parameters set to `'*'`. If the parameters value is set to `[]` -> only content-type values with no parameters will be accepted. +> only content-type values with no parameters will be accepted. All +> parameter values are treated in a case sensitive manner except the +> `charset` parameter, if present, which is case insensitive. > > The `ProvideResource` value is the name of the callback that will > be called if the content-type matches. It is defined as follow. -- cgit v1.2.3