iOS 앱의 http 통신을 허용하는 방법
목적
Xcode에서 iOS 앱을 개발할 때 api 통신을 통해 데이터를 얻을 수있는 기회가 자주 있습니다. 그러나 iOS9 이상에서는 https 통신만 기본적으로 허용됩니다.
만약 실제로 http통신을 시도해도 아래와 같은 에러 메시지가 표시되고 통신이 거부됩니다.
App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your app’s Info.plist file.
설정 방법
info.plist 편집
1 먼저 프로젝트를 만들 때 자동으로 생성되는 info.plist를 엽니다. 그런 다음 위 이미지의 정보 등록 정보 목록 오른쪽에 있는 + 표시를 클릭합니다.
2 다음에 + 버튼을 누르면 표시되는 열 중에서 App Transport Security Settings를 선택합니다.
3 다음에 이전에 선택한 App Transport Security Settings의 왼쪽에 있는 ▶︎을 위 그림과 같이 ▼를 클릭하여 아래로 향합니다. 그런 다음 App Transport Security의 오른쪽에 있는 +를 누르고 Allow Arbitary Loads를 선택합니다.
4 마지막으로 위 그림과 같이 Allow Arbitary Loads의 Value 부분을 디폴트의 NO에서 YES로 변경하면 설정 완료입니다.
마지막으로
이번에는 HTTP 통신을 가능하게 하는 방법을 소개했습니다만, iOS9 마이그레이션으로 통신이 암호화되는 HTTPS 통신이 추천되고 있어 시큐리티면 등도 고려하면 물론 HTTPS 통신을 사용하는 것이 좋다고 생각합니다 .
따라서 가능하면 api를 준비하는 경우에는 https에 대응시키는 것이 좋습니다.
Reference
이 문제에 관하여(iOS 앱의 http 통신을 허용하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Howasuto/items/f8e97796c6eb30de4112텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)