StringResponseSerializer
public final class StringResponseSerializer : ResponseSerializer
A ResponseSerializer
that decodes the response data as a String
. By default, a request returning nil
or no
data is considered an error. However, if the request has an HTTPMethod
or the response has an HTTP status code
valid for empty responses, then an empty String
is returned.
-
Declaration
Swift
public let dataPreprocessor: any DataPreprocessor
-
Optional string encoding used to validate the response.
Declaration
Swift
public let encoding: String.Encoding?
-
Declaration
Swift
public let emptyResponseCodes: Set<Int>
-
Declaration
Swift
public let emptyRequestMethods: Set<HTTPMethod>
-
Creates an instance with the provided values.
Declaration
Swift
public init(dataPreprocessor: any DataPreprocessor = StringResponseSerializer.defaultDataPreprocessor, encoding: String.Encoding? = nil, emptyResponseCodes: Set<Int> = StringResponseSerializer.defaultEmptyResponseCodes, emptyRequestMethods: Set<HTTPMethod> = StringResponseSerializer.defaultEmptyRequestMethods)
Parameters
dataPreprocessor
DataPreprocessor
used to prepare the receivedData
for serialization.encoding
A string encoding. Defaults to
nil
, in which case the encoding will be determined from the server response, falling back to the default HTTP character set,ISO-8859-1
.emptyResponseCodes
The HTTP response codes for which empty responses are allowed.
[204, 205]
by default.emptyRequestMethods
The HTTP request methods for which empty responses are allowed.
[.head]
by default. -
Declaration
Swift
public func serialize(request: URLRequest?, response: HTTPURLResponse?, data: Data?, error: (any Error)?) throws -> String