6

Tiêu đề cấp phép được đặt trong NSURLSessionConfiguration, tuy nhiên nó không được đính kèm với NSURLSessionDataTask. Đây có phải là lỗi trong số Foundation framework không?NSURLSessionConfiguration HTTPAdditionalHeaders không được đặt

NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration]; 
[configuration setHTTPAdditionalHeaders:@{@"Authorization":@"123"}]; 

// Initialize session with NSURLSessionConfiguration 
NSURLSession *session = [NSURLSession sessionWithConfiguration:configuration]; 
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url]; 
NSURLSessionDataTask *sessionTask = [session dataTaskWithRequest:request 
             completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) { 
}]; 

[sessionTask resume]; 
+0

Bạn có bất kỳ giải pháp? –

Trả lời

1

tôi cố gắng này trong Swift và nó hoạt động

var sessionConfig = NSURLSessionConfiguration.defaultSessionConfiguration() 
    var xHTTPAdditionalHeaders: [NSObject : AnyObject] = ["X-test":"taly"] 
    sessionConfig.HTTPAdditionalHeaders = xHTTPAdditionalHeaders 
    let session = NSURLSession(configuration: sessionConfig) 

    let task = session.dataTaskWithURL(url, completionHandler: {data, response, error -> Void in 
+4

Đã cố gắng này, không làm việc cho tôi. iOS 9.2. – zumzum

+0

Làm việc cho 'X-test' nhưng sẽ không hoạt động đối với' Authorization'. Xem Dongjin Suh trả lời. –

5

Trong NSURLSessionConfiguration document,

Một đối tượng NSURLSession được thiết kế để xử lý các khía cạnh khác nhau của giao thức HTTP cho bạn. Kết quả là, bạn không nên thay đổi các tiêu đề sau :

Authorization

kết nối

chủ

WWW-Authenticate

Các vấn đề liên quan