gpt4 book ai didi

ios - 如何使用 AFNetworking 2.5 发送 XML PUT/POST 请求

转载 作者:行者123 更新时间:2023-11-28 07:12:01 24 4
gpt4 key购买 nike

无法弄清楚我需要如何指定 requestSerializer 以 XML 格式发送请求。这是一个快速的例子:

var manager = AFHTTPRequestOperationManager()

manager.responseSerializer = AFXMLParserResponseSerializer()
manager.requestSerializer = AFHTTPRequestSerializer()

var parameters = "<regNumber>123</regNumber><pinNumber>234</pinNumber>"
var encodingParameters = parameters.dataUsingEncoding(NSUTF16StringEncoding)

manager.PUT("serviceurl", parameters: encodingParameters, success: {
//....
},
failure: {
///.....
}
)

您可以看到我现在正在使用 AFHTTPRequestSerializer() - 但我不确定这是否正确。试图找到类似于 AFXMLParserResponseSerializer() 但请求的东西。

它可以很好地与 AFJSONRequestSerializer 配合使用,如下所示:

var manager = AFHTTPRequestOperationManager()

manager.responseSerializer = AFXMLParserResponseSerializer()
manager.requestSerializer = AFJSONRequestSerializer(writingOptions: NSJSONWritingOptions())

var parameters = ["regNumber": 123, "pinNumber": 234]

manager.PUT("serviceurl", parameters: parameters, success: {
//....
},
failure: {
///.....
}
)

任何人都可以展示使用 AFNetworking 2.5 的 XML 请求的工作示例吗?

最佳答案

您可以像这样使用 AFHTTPRequestOperation 而不是 AFHTTPRequestOperationManager:

    let xmlString = "<regNumber>123</regNumber><pinNumber>234</pinNumber>"
let xmlData = xmlString.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false)
let request = NSMutableURLRequest(URL: NSURL(string: "serviceurl")!)
request.HTTPMethod = "POST"
request.HTTPBody = xmlData

let operation = AFHTTPRequestOperation(request: request);

operation.setCompletionBlockWithSuccess({ (AFHTTPRequestOperation operation, AnyObject response) -> Void in
//Response

}, failure: { (AFHTTPRequestOperation operation, NSError error) -> Void in
println(error.localizedDescription)
})
operation.start()

关于ios - 如何使用 AFNetworking 2.5 发送 XML PUT/POST 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28106950/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com