Swift

【swift】http通信を許可する方法

はじめに

iOSアプリを開発する上で、api通信を挟んでデータを取得する機会が多いと思いますが、iOS9以降ではデフォルトではhttps通信しか許可されていません。今回はhttp通信をできるようにするやり方を書いていきます。

info.plistの編集

http通信を許可するにはinfo.plistを書き換えます。
info.plistはプロジェクト作成時に自動で作成されていて、プロジェクトの設定ファイルみたいなものです。

このような画面になっていて、「Information Property List」にフォーカスをあてると+ボタンがでてくるのでそれをクリックすると「Information Property List」以下に新しい項目を入力する部分が出てきます。

「appt」ぐらいまで打てば候補で「App Transport Security Settings」というのがでてくるのでそれを選択します。

「App Transport Security Settings」の左にある「▶」をクリックして「▼」にして「App Transport Security Settings」の右にあるプラスボタンをクリックします。
そうすると同じように入力のフォームが出てくるので「Allow Arbitrary Loads」とします。

その値を「YES」に書き換えます。

これで設定は完了です!

注意

http://jp.techcrunch.com/2016/06/15/20160614apple-will-require-https-connections-for-ios-apps-by-the-end-of-2016/
iOSアプリは2017年1月からHTTPSの使用が絶対条件となるみたいなので、現状(2017年9月12日)では大丈夫ですがいずれ使えなくなるので今回紹介した内容はその場しのぎでしかなくなってしまうのでお早めにお対応ください