gpt4 book ai didi

ios - 在 Swift 中使用 PATCH 的带有 Body 的 HTTP 请求

转载 作者:搜寻专家 更新时间:2023-10-31 22:35:04 24 4
gpt4 key购买 nike

我正在尝试发送带有序列化 JSON 正文的补丁请求。

由于某种原因,服务器无法正确接收正文。感觉PATCH方法结合http请求体好像有问题。

    let sessionConfig = NSURLSessionConfiguration.defaultSessionConfiguration()
let session = NSURLSession(configuration: sessionConfig, delegate: nil, delegateQueue: nil)

var URL = B2MFetcher.urlForBooking(event.unique, bookingID: booking.unique)
let request = NSMutableURLRequest(URL: URL)
request.HTTPMethod = "PATCH"

// Headers
println(token)
request.addValue(token, forHTTPHeaderField: "Authorization")
request.addValue("gzip, identity", forHTTPHeaderField: "Accept-Encoding")

// JSON Body
let bodyObject = [
"op": "cancel"
]
var jsonError: NSError?
request.HTTPBody = NSJSONSerialization.dataWithJSONObject(bodyObject, options: nil, error: &jsonError)

/* Start a new Task */
let task = session.dataTaskWithRequest(request, completionHandler: { (data : NSData!, response : NSURLResponse!, error : NSError!) -> Void in
completion(data: data, response:response , error: error)
})
task.resume()

最佳答案

您可以尝试向请求中添加一个 Content-Type header :

request.addValue("application/json", forHTTPHeaderField: "Content-Type")

或使用描述的其他 JSON 内容类型格式之一 here .

我使用 ExpressJS 服务器对其进行了测试,没有 Content-Type header ,服务器得到一个空主体,但使用 Content-Type header 时,它运行良好。

关于ios - 在 Swift 中使用 PATCH 的带有 Body 的 HTTP 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31204815/

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