【发布时间】:2015-04-16 02:19:57
【问题描述】:
我使用带有自定义标头的Alamofire 实现了一个 POST 请求,因为我们使用 OAuth2,并且我们必须在标头内的每个请求中发送一个访问令牌。在这种情况下,我必须使用自定义标题。
HTTP 标头字段Authorization 的访问令牌值对我不起作用。服务器生成错误,因为带有访问令牌的 OAuth 标头信息不可用。
但是我的代码有什么错误?
这是我当前的代码:
let URL = NSURL(string: url + "/server/rest/action")
var mutableURLRequest = NSMutableURLRequest(URL: URL!)
mutableURLRequest.setValue("Bearer \(accessToken)", forHTTPHeaderField: "Authorization")
//this method does not work anymore because it returns an error in the response
//Alamofire.Manager.sharedInstance.session.configuration.HTTPAdditionalHeaders = ["Authorization": "Bearer \(accessToken)"]
Alamofire.Manager.sharedInstance
.request(.POST, mutableURLRequest, parameters: parameters, encoding: .JSON)
.validate()
.responseJSON {
(request, response, data, error) -> Void in
NSLog("REQUEST: \(request)")
NSLog("RESPONSE: \(response)")
NSLog("DATA: \(data)")
NSLog("ERROR: \(error)")
}
【问题讨论】:
-
接受的答案似乎已过时。在这里查看我的答案:stackoverflow.com/a/40000918/2594699
标签: swift post header afnetworking alamofire