作者:sannyi | 来源:互联网 | 2023-02-04 19:30
我正在尝试在Swift3中运行HTTP请求,将POST 2参数发送到URL.
例:
链接:
http://test.tranzporthub.com/street45/customer_login.php
PARAMS:
{
"user_id":"chaitanya3191@gmail.com",
"password":"123"
}
最简单的方法是什么?
我甚至不想阅读回复.我只是想发送它来通过PHP文件对我的数据库进行更改.
1> Atlas_Gondal..:
我想,你完全是新手,但这里有一些你可以在SWIFT 3中尝试的东西:
打开info.plist文件(双击或右键单击>打开为>源代码)
在关闭
和
标记之前粘贴此代码:
NSAppTransportSecurity
NSExceptionDomains
tranzporthub.com
NSIncludesSubdomains
NSTemporaryExceptionAllowsInsecureHTTPLoads
NSTemporaryExceptionMinimumTLSVersion
TLSv1.1
现在打开您的视图控制器并将此代码粘贴到您要发布请求的位置:
var request = URLRequest(url: URL(string: "http://test.tranzporthub.com/street45/customer_login.php")!)
request.httpMethod = "POST"
let postString = "user_id=chaitanya3191@gmail.com&password=123"
request.httpBody = postString.data(using: .utf8)
let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data, error == nil else { // check for fundamental networking error
print("error=\(error)")
return
}
if let httpStatus = response as? HTTPURLResponse, httpStatus.statusCode != 200 { // check for http errors
print("statusCode should be 200, but is \(httpStatus.statusCode)")
print("respOnse= \(response)")
}
let respOnseString= String(data: data, encoding: .utf8)
print("respOnseString= \(responseString)")
}
task.resume()
注意:如果您不需要,可以删除打印语句!
希望这可以帮助!:)
2> User558..:
@IBAction func postAction(_ sender: Any) {
let Url = String(format: "your url")
guard let serviceUrl = URL(string: Url) else { return }
// let loginParams = String(format: LOGIN_PARAMETERS1, "test", "Hi World")
let parameterDictiOnary= ["username" : "@kilo_laco", "tweet" : "Hi World"]
var request = URLRequest(url: serviceUrl)
request.httpMethod = "POST"
request.setValue("Application/json", forHTTPHeaderField: "Content-Type")
guard let httpBody = try? JSONSerialization.data(withJSONObject: parameterDictionary, options: []) else {
return
}
request.httpBody = httpBody
let session = URLSession.shared
session.dataTask(with: request) { (data, response, error) in
if let respOnse= response {
print(response)
}
if let data = data {
do {
let json = try JSONSerialization.jsonObject(with: data, options: [])
print(json)
}catch {
print(error)
}
}
}.resume()
}