Alamofire 4, Swift 3 et la construction d'un json corps
{"title":"exampleTitle","hashTags":[{"name":"tag1"},{"name":"tag2"}],"uploadFiles":
[{"fileBytes":"seriesOfBytes\n","filename":"upload.txt"}]}
C'est mon corps que je veux envoyer à l'arrière-plan.
Je suis en utilisant Swift 3.0 et Alamofire 4 et j'ai plusieurs questions.
première, Comment puis-je créer correctement un corps qui contient des valeurs et des tableaux de valeurs?
Mon approche est la suivante:
let para:NSMutableDictionary = NSMutableDictionary()
para.setValue("exampleTitle", forKey: "title")
let jsonData = try! JSONSerialization.data(withJSONObject: para, options: .init(rawValue: 0))
let jsonString = NSString(data: jsonData, encoding: String.Encoding.utf8.rawValue) as! String
print(jsonString)
qui me donne
{"title":"exampleTitle"}
deuxième, mon alamofire .demande post ressemble à celui-ci et ne fonctionne pas:
Alamofire.request(postURL, method: .post, parameters: jsonString, encoding: JSONEncoding.default)
.responseJSON { response in
debugPrint(response)
}
je reçois le message d'erreur: argument supplémentaire "méthode" en appel. Si je à la place de jsonString utiliser une chaîne de caractères du type
var jsonString: [String : Any]
il fonctionne, mais je ne sais pas comment mettre le corps dans ce type.
résumé
la recherche de l'aide (exemple serait le meilleur) sur la façon de créer le corps, et comment l'envoyer via Alamofire 4 et swift 3 dans mon backend.
- Double Possible de Comment envoyer une requête POST avec CORPS en swift
Vous devez vous connecter pour publier un commentaire.
Vous devez passer le paramètre que
[String:Any]
dictionnaire, donc créer un dictionnaire comme votre passage JSON comme ça.Maintenant passer à ce
params
comme paramètre dans Alamofire demande.