URLSessionConfiguration
- URLSession.shared() :싱글톤 방식 간단한 통신 커스터마이징 불가능
- URLSession(configuration:.default): 기본세션 푸시 쿠키인증 디스크 저장
- URLSession(configuration:.ephemeral): 임시세션 캐쉬 쿠키 사용자 인증 디스크 저장 x
- URLSession(configuration:.background) : 백그라운드에서 진행할 세션(다운로드, 업로드 등등)
URLSession 테스크 종류
- URLSessionDataTask
- URLSessionUploadTask
- URLSessionDownloadTask
- URLSessionStreamTask
- URLSessionWebSocketTask
URLSession Life Cycle
- Session configuration을 결정하고, Session 을 생성
- 통신할 URL과 Request 객체를 설정
- 사용할 Task를 결정하고 그에 맞는 Completion Handler나 Delegate 메소드들을 작성
- 해당 Task를 실행
- Task완료 후 Completion Handler클로저가 호출 됨.