Я делаю пост на URL, и мой webDev говорит мне, что мне нужно установить
" data = "
в качестве параметра и мой JSONObject в качестве ключа.Я не знаю, как установить строку в качестве параметра.
Я попытался объединить строку в request.httpBody, но он принимает только данные.Я пытался добавить его в некоторых других областях, но безрезультатно.
let dateFormatter = DateFormatter()
dateFormatter.timeZone = TimeZone(abbreviation: "UTC")
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm"
let dateString = dateFormatter.string(from: load.date)
let json: [String: Any] = ["lb_datetime": "\(dateString)", "operator_id": "\(load.operatorID)", "ticket_number": load.ticketNumber, "timber_sale_id": "\(load.saleID)", "hauler_id": haulerInt, "product_id": String(load.productID), "destination": load.destination, "driver": load.driver, "trailer": load.trailerNumber, "trailer_drop": "\(load.trailerDrop)", "scaleticket": load.scaleTicketNumber, "tons": "\(load.tons)", "coords": coordsString, "net": "\(load.net)", "live": "true"]
print("JSON Object: \(json)")
let jsonData = try? JSONSerialization.data(withJSONObject: json)
// create post request
let url = URL(string: "http://example.net/example/app/mobile/removal/")!
var request = URLRequest(url: url)
request.httpMethod = "POST"
// insert json data to the request
request.httpBody = jsonData
let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data, error == nil else {
print(error?.localizedDescription ?? "No data")
return
}
let responseJSON = try? JSONSerialization.jsonObject(with: data, options: [])
if let responseJSON = responseJSON as? [String: Any] {
print("RESPONSEDATA: \(responseJSON)")
}
}
task.resume()
Любая помощь очень ценится!