我正在尝试使用NSMutableURLRequest
创建POST请求,但将NSData
对象传递给其HTTPBody
的行为不符合预期。
以下是我的工作:
guard let url = NSURL(string: endpoint) else {
print("Error: Cannot create URL")
return nil
}
do {
let params = try NSJSONSerialization.dataWithJSONObject(options, options: [])
let urlRequest:NSMutableURLRequest = NSMutableURLRequest(URL: url)
urlRequest.HTTPMethod = method
if method != "GET" {
urlRequest.HTTPBody = params
}
return urlRequest
} catch {
print("Error: Cannot parse options data into JSON")
return nil
}
这是我得到的:
#<Hashie::Mash {"token":"MVgutecI0y5AzJ8KcIgkxT56mwEh","email":"adrien.giboire@gmail.com","password":"adichris"}=nil>
我的服务器是用Ruby编写的。以下是我如何获取它:
puts params.inspect
答案 0 :(得分:3)
由于您要发布JSON,因此在返回之前必须将请求的Content-Type
标头设置为application/json
。
request.setValue("application/json", forHTTPHeaderField: "Content-Type")