-
nsurlerrordomain code=-1022, HTTP 프로토콜 허용Language/iOS,AOS 2023. 3. 17. 08:22
iOS 9 이후로 App Transport Security(ATS)를 이용하여 http프로토콜을 차단 한다고 합니다.
해당 설정을 하지 않은채 http로 접근을 시도하면 아래와 같은 에러가 발생합니다.
해결 방법
Info.plist의 설정에서 App Transport Security Settings을 아래와 같은 방식으로 추가해 줍니다.
1. App Transport Security Settings 추가
TARGETS -> Info -> `+` -> App Transport Security Settings 추가 -> Type Tictionary 확인
2. Allow Arbitray Loads 추가 및 허용
Add Row -> Allow Arbitrary Loads 을 선택해 주고 옵션은 YES로 허용해 준다.
plist 파일을 열어서 직접 추가해 주는것도 가능합니다.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> ... <key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict> ... </dict> </plist>
필자는 로컬에서 http 오류 나서 NSExceptionAllowsInsecureHTTPLoads 도 추가해 주었습니다.
<key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> <key>NSExceptionDomains</key> <dict> <key>NSExceptionAllowsInsecureHTTPLoads</key> <true/> </dict> </dict>
참조
'Language > iOS,AOS' 카테고리의 다른 글
TestFlight tester 등록 방법 (0) 2023.03.31 Ipad에서 userAgent가 Mac으로 나올때 (0) 2023.03.29 아이폰 UDID 확인 (0) 2023.03.08 plist 분리를 통한 서버 환경 설정 (0) 2023.03.08 Development로 Archive해서 ipa 파일 다운로드 (0) 2023.03.07