我对我的 Web 服务进行网络调用并获得基本的身份验证挑战。
我需要在质询响应中传递用户名、密码和 cookie。我怎样才能做到这一点?请注意,我不能将标头作为初始请求的一部分传递,因为存在一些服务器端限制,因此我需要使用这些标头动态响应挑战:
我现在使用的是:
func URLSession(session: NSURLSession!, task: NSURLSessionTask!, didReceiveChallenge challenge: NSURLAuthenticationChallenge!, completionHandler: ((NSURLSessionAuthChallengeDisposition, NSURLCredential!) -> Void)!){
println("task-didReceiveChallenge")
if challenge.previousFailureCount > 0 {
println("Alert Please check the credential")
completionHandler(NSURLSessionAuthChallengeDisposition.CancelAuthenticationChallenge, nil)
} else {
var credential = NSURLCredential(user:"username", password:"password", persistence: .ForSession)
completionHandler(NSURLSessionAuthChallengeDisposition.UseCredential,credential)
}
}
如何在此行的完成处理程序中传递自定义标头?
completionHandler(NSURLSessionAuthChallengeDisposition.UseCredential,credential)