Ich versuche ein Bild, das von einem UIImagePickerController ausgewählt wurde, auf meinen Webserver hochzuladen, der auf AWS gehostet wird. Ich folge diesem Tutorial: https://www.udemy.com/swift-php-mysql-user-sign-up-sign-in-sign-out-and-more/learn/v4/overview und ich bekomme eine Reihe von Argument labels '(_:)' do not match any available overloads
Fehler. Ich habe versucht, diesen Fehler zu suchen, aber ich habe nichts gefunden, das sich auf meinen aktuellen Code bezieht. Ich benutze nicht den Originalcode im Tutorial, ich versuche es in Swift3 zu übersetzen und benutze die folgende Antwort: iOS swift NSMutableData has no member appendString um den besten Programmierpraktiken zu folgen. Hier ist mein aktueller Code:swift3 - Bild auf Webserver hochladen
func createBodyWithParameters(_ parameters: [String: String]?, filePathKey: String?, imageDataKey: Data, boundary: String) -> Data {
var body = Data();
if parameters != nil {
for (key, value) in parameters! {
body.append(Data("--\(boundary)\r\n"))
body.append(Data("Content-Disposition: form-data; name=\"\(key)\"\r\n\r\n"))
body.append(Data("\(value)\r\n"))
}
}
let filename = "user-profile.jpg"
let mimetype = "image/jpg"
body.append(Data("--\(boundary)\r\n"))
body.append(Data("Content-Disposition: form-data; name=\"\(filePathKey!)\"; filename=\"\(filename)\"\r\n"))
body.append(Data("Content-Type: \(mimetype)\r\n\r\n"))
body.append(imageDataKey)
body.append(Data("\r\n"))
body.append(Data("--\(boundary)--\r\n"))
return body as Data
}
Kann jemand erklären, was ich falsch mache? Vielen Dank!
Hallo @Nebojsa, Ich habe versucht, die utf8 am Ende hinzufügen, aber es gibt immer noch den gleichen Fehler. Ich fügte die Daten hinzu, weil der Typ in der anderen SO-Antwort erwähnte, dass Sie 'body.append (string:" - \ (boundary) \ r \ n ") nicht verwenden sollten. Was ist die beste Vorgehensweise, wenn Sie etwas tun? so was? Ich bekomme immer noch den gleichen Fehler. Irgendwelche Ideen? – Alan
Welchen genauen Fehler bekommen Sie? Ich werde meine Antwort bald bearbeiten, ich habe diesen Code auf meinem Computer. –
Das Problem wurde basierend auf Ihrer Antwort behoben. Ich benutzte die zweite Methode mit der Erweiterung und es funktionierte wie ein Zauber. Vielen Dank! – Alan