iOS ネイティブ アプリがあります。
Rails (4.1.4) で開発された API があります。これはhttp://api.myapp.local:5000にあります。
/etc/hosts を構成して、基本的な API / Web 開発を行いましたが、問題なくすべてが完全に機能しています。
私の問題は、WiFi 経由で iOS アプリ (シミュレーターではなく実際のデバイス) を介してローカル API を使用したいことです。
これが私がテストしたものです(動作しません)
- シンWebサーバーでローカルen0 inet ipでxip.ioを使用します。
- pow webserver を使用して、ローカルの en0 inet ip で xip.io を使用します。
- パブリックIP経由で接続するためにポート転送を行いました
実際、問題は基本的にサブドメインが原因です。アプリにサブドメインがない場合、上記のすべてのソリューションが機能します。(この方法でローカル API にアクセスできますが、これは私が望んでいるものではありません)
私の問題は、iOS アプリに「このサブドメインを使用して、この IP に接続する」と指示できないことです。
私はおそらくネットワークに関して知識が不足していますが、iOS アプリでローカル Web サーバーをテストする必要があるため、この問題に本当に悩まされています。
私のルートファイルは次のようになります。
constraints subdomain: 'api', format: 'json' do
scope module: :api do
scope module: :v1, constraints: ApiConstraints.new(version: 1, default: true) do
resources :packs, only: [:index, :show]
end
end
end