我不能为我的生活找出这个问题。我希望你们能。
我想通过HTTPS POST发送用户名和密码。问题是,我无法使其发挥作用。
我正在尝试制作的代码是:
import UIKit
import Foundation
import PlaygroundSupport
let url:URL = URL(string: "https://mywebsite.com/myAPI")!
let session = URLSession.shared
var request = URLRequest(url: url)
request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
request.httpMethod = "POST"
request.cachePolicy = NSURLRequest.CachePolicy.reloadIgnoringCacheData
let paramString = "username=Pleasework&password=itwont"
request.httpBody = paramString.data(using: String.Encoding.utf8)
let task = session.dataTask(with: request as URLRequest) {
(
data, response, error) in
guard let data = data, let _:URLResponse = response, error == nil else {
print("error")
return
}
let dataString = String(data: data, encoding: String.Encoding.utf8)
print(dataString ?? "Got nothing")
}
task.resume()
查看我的服务器日志,这个请求会通过,但它应该创建一个包含所述params的文件。我尝试使用名为" Request Maker"的Chrome扩展程序,并创建了该文件。 (该文件是用PHP创建的,与此问题无关)我发现只有在指定了内容类型后才创建该文件,所以我在Swift中尝试过。
我正在使用Swift 3和Xcode 8,我希望你们可以帮我发送一个带有内容类型的简单发布请求到URL,Stackoverflow上的所有其他答案都没有帮助我。
由于