単一のコントローラーを備えたシンプルなRailsアプリがあります。コントローラーのいくつかのメソッドに「フィルターの前」があり、セッションオブジェクトを見てユーザーがログインしているかどうかを確認します。
@user = User.where(:id => session[:user_id]) if session[:user_id]
私のコントローラーの「ログイン」メソッドでは、次のことを行います。
session[:user_id] = user.id
かなり普通のもの。Webブラウザー(Chrome)からアプリにアクセスすると、すべて正常に動作します。ただし、iOSアプリからNSURLRequestを使用してRailsアプリにアクセスすると、サーバーは常にリクエストごとに新しいセッションを作成します。リクエストが適切なセッションIDを含むCookieを送信している場合でも、既存のセッションを識別できないようです。実際、Railsアプリで「cookies」オブジェクトを見ると、セッションIDが含まれていることがわかります。ただし、セッションオブジェクトは常に空です。サーバーがセッションを取得できない理由がわかりません。PassengerPhusionを使用しています。助言がありますか?