2016-10-25 7 views
3

Я использовал следующий код для подключения к прокси-серверу и отлично работает только для HTTP-запросов, но не для HTTPS. В iOS 9.0, kCFStreamPropertyHTTPSProxyHost и kCFStreamPropertyHTTPSProxyPort обесцениваются.Как добавить прокси-сервер HTTPS к NSURLSession в SWIFT 3

let myPortInt = 12345; 
let myProxyUrlString = "myProxyURL"; 

    let sessionConfiguration = NSURLSessionConfiguration.defaultSessionConfiguration(); 
    sessionConfiguration.connectionProxyDictionary = [ 
     kCFNetworkProxiesHTTPEnable: true, 
     kCFNetworkProxiesHTTPPort: myPortInt, 
     kCFNetworkProxiesHTTPProxy: myProxyUrlString, 
    ] 
    let url = NSURL(string: endPointUrl) 
    let postRequest = NSMutableURLRequest(URL: url!, cachePolicy: NSURLRequestCachePolicy.ReloadIgnoringLocalAndRemoteCacheData, timeoutInterval: 10.0) 


    let jsonString = bodyString 
    postRequest.HTTPBody = jsonString 
    postRequest.HTTPMethod = "POST" 
    postRequest.setValue("application/json", forHTTPHeaderField: "Content-Type") 

    let session = NSURLSession(configuration: sessionConfiguration)  
    let task = session.dataTaskWithRequest(postRequest){} 

ответ

1

Я нашел решение для добавления HTTPS прокси NSURLsession

let proxyDict : NSDictionary = ["HTTPEnable": Int(1), "HTTPProxy": myProxyUrlString, "HTTPPort": myPortInt, "HTTPSEnable": Int(1), "HTTPSProxy": myProxyUrlString, "HTTPSPort": myPortInt] 

    let sessionConfiguration = NSURLSessionConfiguration.defaultSessionConfiguration();