Skip to content

Commit 6ae7074

Browse files
describe behaviour when deserializing a multipart with a Content-Type header
1 parent 713207f commit 6ae7074

1 file changed

Lines changed: 5 additions & 1 deletion

File tree

src/oas.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1734,6 +1734,10 @@ This table is based on the value to which the Encoding Object is being applied a
17341734
Note that in the case of [Encoding By Name](#encoding-by-name), this value is the array item for properties of type `"array"`, and the entire value for all other types.
17351735
Therefore the `array` row in this table applies only to array values inside of a top-level array when encoding by name.
17361736

1737+
When deserializing a multipart message, if a `Content-Type` header is present in the specific part, its value SHALL be used instead of these values. Behavior is undefined when both this header and `contentType` are defined but with different values.
1738+
If the `contentType` field is absent but `Content-Type` is present, it is RECOMMENDED to use the value of `Content-Type`. However, this behavior may produce unexpected results due to the possibility that the `schema` is not structured for the received `Content-Type`.
1739+
1740+
17371741
| `type` | `contentEncoding` | Default `contentType` |
17381742
| ---- | ---- | ---- |
17391743
| [_absent_](#working-with-binary-data) | _n/a_ | `application/octet-stream` |
@@ -1869,7 +1873,7 @@ Note that there are significant restrictions on what headers can be used with `m
18691873

18701874
##### Handling Multiple `contentType` Values
18711875

1872-
When multiple values are provided for `contentType`, parsing remains straightforward as the part's actual `Content-Type` is included in the document.
1876+
When multiple values are provided for `contentType`, deserializing remains straightforward as the part's actual `Content-Type` SHOULD be included as a header of that part and SHOULD match one of the provided `contentType` values.
18731877

18741878
For encoding and serialization, implementations MUST provide a mechanism for applications to indicate which media type is intended.
18751879
Implementations MAY choose to offer media type sniffing ([[SNIFF]]) as an alternative, but this MUST NOT be the default behavior due to the security risks inherent in the process.

0 commit comments

Comments
 (0)