簡體   English   中英

如何指定在 Swift 中的 URLRequest 中發送的數據類型?

[英]How to specify the type of Data being sent in URLRequest in Swift?

我試圖了解如何使用 Swift 中的URLRequest.addvalue()方法指定在 URLRequest 中發送的數據類型。

例如,我了解到

URLRequest.addValue("applications/json", forHTTPHeaderField: "Content-Type")

指定要發送的json數據。 例如,如果我需要發送 xml,我應該怎么做?

任何資源也將有所幫助!

這里我們不能直接將 header 字段分配給 URLRequest 類。 所以先做一個 URLRequest 的變量。

// create post request
let url = URL(string: "http://www.myserver.com")!
var request = URLRequest(url: url)
request.httpMethod = "POST"

// set header field
request.addValue("application/xml", forHTTPHeaderField: "Content-Type")

// insert xml data to the request
let stringParams : String = "<msg id=\"123123\" reqTime=\"123123\">" +
    "<params class=\"API\">" +
    "<param name=\"param1\">123213</param>" +
    "<param name=\"param2\">1232131</param>" +
    "</params>" +
"</msg>"
request.httpBody = stringParams.data(using: String.Encoding.utf8, allowLossyConversion: true)

// api call
let task = URLSession.shared.dataTask(with: request) { data, response, error in
    guard let data = data, error == nil else {
        print(error?.localizedDescription ?? "No data")
        return
    }
    // process with data
    print(data)
}
task.resume()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM