大阪市中央区 システムソフトウェア開発会社

営業時間:平日09:15〜18:15
MENU

iPhoneプロジェクト『お散歩ミッション その8』 iPhoneでサーバーアクセス

株式会社クローバーフィールドの経営理念
著者:川上洋
公開日:2016/02/26
最終更新日:2018/06/14
カテゴリー:技術情報

お久しぶりです。スタッフの川上です。

もっとマメに更新しなくっちゃね。反省してます。m(_ _)m

前回、テスト用ローカルサーバーを立ち上げてテストDBを作って

とりあえず、PC  でアクセス出来るとこまでしました。

スクリーンショット 2016-02-25 21.57.08

これを、iPhoneから呼び出して、データ取得してみましょうってことで、「お散歩」アプリのトップメニューにテスト用メニューを追加してWabViewを設置しました。

スクリーンショット 2016-02-25 22.11.01

この辺の記事を参照にボタンとWabViewを載っけた新規ViewContlloerを関連付けて遷移させてみましょう。

WabViewに適当な ヤホーでも設定して表示させましょう。。。出ませんね。

そっ。ATSです。これをOFFにせねば表示しません。

info.plistに下記を追加すると、OFFに出来ます。<<・・・テスト仕様ですよ〜
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>

設定後、再try。 出ました。出ました。。

ここで、母艦のローカルサーバーにアクセスして、MySqlのデータを引張ってこれるようapachとmysqlを起動しておきます。

iMac側(host server側)
$ sudo apachectl start
$ mysql.server start

で、URLに http://hogehoge.local/dbtest.php を設定して、表示させると

DB登録データが出ます。

スクリーンショット 2016-02-25 22.39.07

xode7からは、実機テストがタダで出来るようになりました。

実機テストでする時は、自宅のWiFiでローカルネットに繋ぐこと忘れずにネ。

このWabViewの表示データをNSMutableStringに落として利用するのです。

DLしたデータはリスト作成やMapViewに使ってあれやこれやに利用するのです。

以下でLOGに表示できました。

var targetURL = “http://hogehoge.local/dbtest.php”

let url = NSURL(string: targetURL)
let req = NSURLRequest(URL: url!)
webVw.loadRequest(req)

let request = NSURLRequest(URL: url!,
cachePolicy: NSURLRequestCachePolicy.ReloadIgnoringLocalAndRemoteCacheData,
timeoutInterval: 10.0)

var htmlString:NSMutableString?;
do {
let data = try NSURLConnection.sendSynchronousRequest(request, returningResponse:nil)
htmlString = NSMutableString(data:data,encoding:NSUTF8StringEncoding)
} catch{
print(“error”)
}

print(htmlString);
//hogehoge.localは、自宅のローカルサーバーの名前です。

( 「設定」ー「共有」に表示されている名前です)

スクリーンショット 2016-02-25 22.42.11

で、データが取れてます。

サーバーのDBからデータを持ってこれたら、後は、楽勝かもね。

    前の記事 :
    上に戻る