Je suis en train de convertir un projet existant qui utilisait Swift 2.3 en Swift 3.1. Jusqu'ici, j'ai réussi à implémenter toutes les modifications selon les suggestions de Xcode, et j'ai également ajouté les derniers POD.Migration de Swift 2.3 vers Swift 3.1 - Erreur de requête Alamofire
Tout semble aller bien, sauf ce qui suit - (Puisqu'il s'agit d'un code déjà existant, j'ai partiellement compris ce qui se passe).
J'ai une demande ci-dessous -
var request = ModifyProfileAddressAPIRequestData()
request.clientContext = ClientContext()
request.customer = AddressContext(address: CustomerAddress(countryName:countryName, countryCode: countryCode, locationName:locationName,houseNr: houseNr, streetName: streetName, postalCode:postalCode, box: box))
request.fields = "customer.address"
let parameters = request.toJSON()
DDLogVerbose("modifyProfileURL parameters JSON:\(parameters)")
alamofireConfigure().request(request).validate(statusCode: 200..<503).responseObject{ (responseData: DataResponse<UserProfile>) in
...
Et le ModifyProfileAddressAPIRequestData est un Mappable struct ci-dessous -
fileprivate struct ModifyProfileAddressAPIRequestData : Mappable{
var customer: AddressContext?
var clientContext: ClientContext?
var fields:String?
init() {}
init?(map: Map) {}
mutating func mapping(map: Map) {
customer <- map["customer"]
clientContext <- map["clientContext"]
fields <- map["fields"]
}
}
Je reçois une erreur dans la demande alamofireConfigure comme Argument type 'ModifyProfileServiceAPIWithAlamofire.ModifyProfileAddressAPIRequestData' does not conform to expected type '
URLRequestConvertible '
Mon autre r demandes, sont modifiées avec succès en suivant la solution from here et cela fonctionne sans aucun problème.
Mon seul problème est avec la requête de type Mappable. Cela fonctionne bien dans Swift 2.3.
Quelqu'un pourrait-il nous éclairer sur ce qui se passe réellement et sur ce qu'il faut faire pour résoudre ce problème dans Swift 3.1, s'il vous plaît?
Avez-vous eu une erreur? – KKRocks
Oui, il est mentionné dans la question - 'Type d'argument' ModifyProfileServiceAPIWithAlamofire.ModifyProfileAddressAPIRequestData 'n'est pas conforme au type attendu' URLRequestConvertible '' –