25
23

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

iPhone実機でサーバと通信出来ないときの最も簡単な解決方法

Posted at

今回はRailsでapiを作成し、実機からそのapiをいくら叩いても

Could not connect to the server.

となってしまいハマってしまいましたん。

もちろんシミュレータでは全く問題なく通信ができます。

解決方法

① PCとiPhoneを同じWifiに繋ぐ
rails sではなくrails s -b 0.0.0.0でサーバを起動する
③ iOS側でapiを叩く時にlocalhostではなく PCのIPアドレス を使用する。

① PCとiPhoneを同じWifiに繋ぐ

PCとiPhoneを同じネット環境に置きましょう。

rails sではなくrails s -b 0.0.0.0でサーバを起する

rails sでは同じネット環境内のクライアントでもサーバにアクセスすることはできません。つまりPC外であるiPhoneはサーバにアクセスすることができないのです。

rails s -b 0.0.0.0とすることで同じネット環境内でPC外のクライアントからサーバにアクセスすることができるようになります。

③ iOS側でapiを叩く時にlocalhostではなく PCのIPアドレス を使用する。

localhostというのは言わばPCの中でしか通用しません。そこにはIPアドレスというものが振られています。

以下PCのIPアドレスの取得方法です

ifconfig | grep 192

このコマンドを打つと
◯◯◯.◯◯◯.◯◯◯.◯◯◯ (◯には数字が入る) という12桁の数字が表示されるので

iOS側でapiを叩く際に

"http://◯◯◯.◯◯◯.◯◯◯.◯◯◯:3000/"

として使ってあげると良いです。

参考

25
23
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
25
23

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?