금융권 프로젝트를 하다가 내부망 서버에 사설 https 환경에서 통신을 해야되는 경우가 생겼는데

Alamofire 에서 에러를 뿜어냈다. 개발 단계이다 보니 예외처리를 해야될 거 같아 찾아보니 방법이 있었다.

 

Connection 2: default TLS Trust evaluation failed(-9807)

Connection 2: TLS Trust encountered error 3:-9807

Connection 2: encountered error(3:-9807)

NSURLConnection finished with error - code -1202

 

// 서버 IP 통으로 예외 처리 하는 코드
let session: Session = {
	let manager = ServerTrustManager(allHostsMustBeEvaluated: false, evaluators: ["xxx.xx.x.66": DisabledTrustEvaluator()])
	let configuration = URLSessionConfiguration.af.default

	return Session(configuration: configuration, serverTrustManager: manager)
}()

					   .... 이하 생략 .....


func request() {
    // 기존 사용 하던 코드
    AF.request(request).validate().responseString { response in                       
    
    // 예외처리 변경 코드
    session.request(request).validate().responseString { response in
    	switch response.result {
            case .success(let objString):
                guard let responseDic = objString.convertToDictionary() else {
                    return
                }
            case .failure(let error): 
            	print(error.errorDescription)
		}
    }
}

+ Recent posts