Wie zum senden von Formular-Daten in der POST-Anforderung in Swift 3
Ich versuche zu post-Formular-Daten über webservice, Benutzername & Passwort, aber in der Antwort-es zeigt eine Fehlermeldung, die besagt "es Konnte keine Verbindung zum server.".
Bitte helfen Sie mir zu senden, Formular-Daten in der POST-Anforderung.
let dict:[String:String] = ["userName": userName as! String, "password": password as! String]
do {
let jsonData = try JSONSerialization.data(withJSONObject: dict, options: .prettyPrinted)
let url = URL(string: "(some url)")!
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.setValue("application/x-www-form-urlencoded charset=utf-8", forHTTPHeaderField: "Content-Type")
request.httpBody = jsonData
let task = URLSession.shared.dataTask(with: request) { data, response, error in
if error != nil {
print(error!.localizedDescription)
return
}
do {
let json = try JSONSerialization.jsonObject(with: data!, options: .mutableContainers) as? NSDictionary
if let parseJSON = json {
let resultValue:String = parseJSON["success"] as! String;
print("result: \(resultValue)")
print(parseJSON)
}
} catch let error as NSError {
print(error)
}
}
task.resume()
} catch {
print(error.localizedDescription)
}
Ich habe versucht, hinzufügen von Werten in der Anfrage, kann einige Werte fehlen in der Anfrage gebildet. Bitte um Hilfe!!
- Schauen Sie sich auch die AlamoFire pod dafür ein einfacher Weg.
- Verwendet haben Alamofire gleiche Problem aufgetreten ist es als gut. API ist in Ordnung, die in POSTMAN
- mein code: lassen Sie urlString = "xxx.xxxx.xxxx.xxx/login" lass headers = [ "Content-Type": "application/form-data" ] Alamofire.Anfrage(urlString), Methode: .post, Parameter: ["Benutzername": Benutzername"Passwort": Passwort], Codierung: JSONEncoding.Standard, Header: Header).responseJSON { Reaktion in der switch-Antwort.Ergebnis { Fall .Erfolg: print(response) Gliedern Fall .failure(Fehler lassen): drucken(Fehler) } }
- Gearbeitet. Mein Antrag geht wie: Alamofire.Anfrage(urlString), Methode: .post-Parameter: param).responseJSON { Reaktion , wo param ist im Wörterbuch & urlString url. lassen param: [String: String] = ["userName": "xxxx","password": "xxxx"]
- Hast du eine Antwort auf diese?
Du musst angemeldet sein, um einen Kommentar abzugeben.
meine Berufung api-Klasse
und wenn es zu benutzen
und die finish-Funktion