简短有没有办法在NSURLRequest
对象创建之后修改其支持的Request
(标题,正文或其他)?
很长:我有一个自定义Manager
,startRequestsImmediately
设置为false
。如果我的访问令牌当前正在刷新,则所有请求都在等待刷新完成,然后它们将恢复。
当然,我需要修改他们的HTTP标头以在恢复之前更新访问令牌。
我不能直接跟踪NSURLRequest
然后重新创建Request
对象,因为我需要保留先前为这些请求设置的所有完成闭包。
有人找到办法吗?
感谢您的帮助。
答案 0 :(得分:0)
您可以使用RequestAdapter。例如:
class MyAdapter: RequestAdapter {
func adapt(_ urlRequest: URLRequest) throws -> URLRequest {
var urlRequest = urlRequest
urlRequest.setValue("Bar", forHTTPHeaderField: "X-Foo")
return urlRequest
}
}
// Then...
let manager = SessionManager()
manager.adapter = MyAdapter()
manager.request("https://httpbin.org/get")