Skip to content

Clarify header grouping #47

@panesofglass

Description

@panesofglass

The spec currently declares:

Header values are assumed to be in a mixed format, meaning that a normally comma separated header may appear as a single entry in the values array, one entry per value, or a mixture of the two. (e.g. new string[1] {"value, value, value"}, new string[3] {"value", "value", "value"}, or new string[2] {"value, value", "value"})

However, as @kolektiv pointed out, that's not entirely clear. My best recollection is that OWIN would not change the header values, just pull all headers with the same header name into a single array, and the framework would then need to process the header values as received by the server.

I propose we amend to the following:

Header values are assumed to be in a mixed format, meaning that a normally comma separated header may appear as a single entry in the values array, one entry per value, or a mixture of the two (e.g. new string[1] {"value, value, value"}, new string[3] {"value", "value", "value"}, or new string[2] {"value, value", "value"}). Servers conforming to OWIN SHOULD NOT change the header values received in the HTTP request and SHOULD expose the header values as received.

I'm happy to change the above from SHOULD to MUST.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions