Ich hatte etwas Code, den ich vor einiger Zeit verwendet habe, der perfekt funktionierte. Ich möchte nun in meinem neuen Projekt verwenden, die 3 swift ist und obwohl ich die meisten Fehler behoben haben Ich habe noch zwei wie folgt links:iOS Swift 3 POST-Ausgabe
Die folgende Codezeile: var _: NSData? = NSURLConnection.sendSynchronousRequest(request as URLRequest, returning:&response) as NSData
erzeugt den folgenden Fehler: Call can throw, but it is not marked with 'try' and the error is not handled
Die folgende Codezeile: NSLog("Response code: %ld", res?.statusCode ?? <#default value#>);
Erzeugt den folgenden Fehler: Editor placeholder in source file
.
Jede Hilfe wird geschätzt.
Im Folgenden ist der vollständige Code, der das Problem lösen helfen können:
func webViewDidFinishLoad(_ webView: UIWebView) {
UIApplication.shared.isNetworkActivityIndicatorVisible = false
let post:NSString = "userid=349&devicetoken=walan"
NSLog("PostData: %@",post);
let url:NSURL = NSURL(string: "https://str8red.com/updateAPN")!
let postData:NSData = post.data(using: String.Encoding.ascii.rawValue)! as NSData
let postLength:NSString = String(postData.length) as NSString
let request:NSMutableURLRequest = NSMutableURLRequest(url: url as URL)
request.httpMethod = "POST"
request.httpBody = postData as Data
request.setValue(postLength as String, forHTTPHeaderField: "Content-Length")
request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
request.setValue("application/json", forHTTPHeaderField: "Accept")
var _: NSError?
var response: URLResponse?
var _: NSData? = NSURLConnection.sendSynchronousRequest(request as URLRequest, returning:&response) as NSData
let res = response as! HTTPURLResponse!;
NSLog("Response code: %ld", res?.statusCode ?? <#default value#>);
}
Wenn Sie zufrieden sind, akzeptieren Sie bitte die Antwort und upvote es. Wenn Sie andere Frage haben, bitte kommentieren Sie. – Wismin