6.2内置内容处理器
StringContentProcessor内容处理器
当原始请求内容满足以下条件时,将使用 StringContentProcessor 来构建 StringContent 实例:
- 原始请求内容为
StringContent或JsonContent。 - 内容类型包括
application/json、application/json-patch+json、application/xml、application/xml-patch+xml、text/xml、text/html、text/plain以及application/soap+xml,且即使这些类型后附加有charset字符集(例如application/json; charset=utf-8),依然适用。
StreamContentProcessor内容处理器
当原始请求内容满足以下条件时,将使用 StreamContentProcessor 来构建 StreamContent 实例:
- 原始请求内容为
StreamContent或Stream。
ByteArrayContentProcessor内容处理器
当原始请求内容满足以下条件时,将使用 ByteArrayContentProcessor 来构建 ByteArrayContent 实例:
- 原始请求内容为
ByteArrayContent或byte[],且不为FormUrlEncodedContent和StringContent。
FormUrlEncodedContentProcessor内容处理器
当原始请求内容满足以下条件时,将使用 FormUrlEncodedContentProcessor 来构建 FormUrlEncodedContent 实例:
- 原始请求内容为
FormUrlEncodedContent或URL编码格式的字符串。 - 内容类型为
application/x-www-form-urlencoded,且即使类型后附加有charset字符集(例如application/x-www-form-urlencoded; charset=utf-8),依然适用。
StringContentForFormUrlEncodedContentProcessor内容处理器
当原始请求内容满足以下条件时,将使用 StringContentForFormUrlEncodedContentProcessor 来构建内容类型为 application/x-www-form-urlencoded 的 StringContent 实例:
- 原始请求内容为
FormUrlEncodedContent或URL编码格式的字符串。 - 内容类型为
application/x-www-form-urlencoded,且即使类型后附加有charset字符集(例如application/x-www-form-urlencoded; charset=utf-8),依然适用。 useStringContent参数或UseStringContent属性 为true。
StringContentForFormUrlEncodedContentProcessor 派生自 FormUrlEncodedContentProcessor。
ReadOnlyMemoryContentProcessor内容处理器
当原始请求内容满足以下条件时,将使用 ReadOnlyMemoryContentProcessor 来构建 ReadOnlyMemoryContent 实例:
- 原始请求内容为
ReadOnlyMemoryContent或ReadOnlyMemory<byte>。
MultipartFormDataContentProcessor内容处理器
当原始请求内容满足以下条件时,将使用 MultipartFormDataContentProcessor 来构建 MultipartFormDataContent 实例:
- 原始请求内容为
MultipartFormDataContent。 - 内容类型为
multipart/form-data,且即使类型后附加有charset字符集(例如multipart/form-data; charset=utf-8),依然适用。
MessagePackContentProcessor内容处理器
当原始请求内容满足以下条件时,将使用 MessagePackContentProcessor 来构建 ByteArrayContent 实例:
- 内容类型为
application/msgpack,且即使类型后附加有charset字符集(例如application/msgpack; charset=utf-8),依然适用。
JsonLinesContentProcessor内容处理器
当原始请求内容满足以下条件时,将使用 JsonLinesContentProcessor 来构建 StringContent 实例:
-
内容类型包括
application/x-ndjson、application/x-jsonlines、application/jsonlines以及application/jsonl,且即使类型后附加有charset字符集(例如application/x-ndjson; charset=utf-8),依然适用。 -
FileInfoContentProcessor内容处理器
当原始请求内容满足以下条件时,将使用 FileInfoContentProcessor 来构建 StreamContent 实例:
- 原始请求内容为
FileInfo。
FormFileContentProcessor内容处理器
当原始请求内容满足以下条件时,将使用 FormFileContentProcessor 来构建 StreamContent 实例:
- 原始请求内容为
IFormFile。