如果后台要这样的数据
[{
"json":"123",
"name":"xiaoming"
},
{
"json":"456",
"name":"xiaohong"
}]
总体思想就是将数据装换成最原始的request的body (数据流)
afn可以自行对照着swift修改下
swift中重新写一个encoding
struct JsonArrayEncoding: Moya.ParameterEncoding {
public static var `default`: JsonArrayEncoding { return JsonArrayEncoding() }
public func encode(_ urlRequest: URLRequestConvertible, with parameters: Parameters?) throws -> URLRequest {
var urlRequest = try urlRequest.asURLRequest()
let jsonArr = try JSONSerialization.data(withJSONObject: parameters!["jsonArr"]!, options: JSONSerialization.WritingOptions.prettyPrinted)
urlRequest.setValue("application/json; charset=utf-8", forHTTPHeaderField: "Content-Type")
urlRequest.httpBody = jsonArr //核心就是这里, AFN对应改这里就行了
return urlRequest
}
}