2

私はすでに codeigniter にアプリケーションを持っていますが、今はこのアプリケーションからアンドロイドを開発しています。このアプリケーションをサーバー側として使用し、Android でクライアント コンソールを実行します。サーバーでは、セッションを維持しています。しかし、アンドロイドのリクエストでは、セッションを維持できません。その代わりに、ログイン要求の最初の要求でサーバーに GUID を作成し、クライアント側に保存し、顧客テーブルにも保存します。その後、要求ごとに、クライアントは認証のために GUID を送信します。今私の問題は、Android codeigniterから取得する各リクエストが異なるセッションIDを持つセッションを作成することです(各リクエストは新しいセッションIDを生成します)。セッションの作成とデータベースへの保存を回避する方法。

4

2 に答える 2

1

あなたの質問はかなり古いですが、この問題を抱えている人は誰でも CI_Session ライブラリを拡張してsess_createメソッドをオーバーライドする必要があります。メソッド内で、どのユーザー エージェントがリクエストを行っているかをテストします。次に、ユーザー エージェントが Android プラットフォームでない場合にのみ、セッションの作成を許可します。

public function sess_create
{
   //load user agent library
   $this->CI->load->library('user_agent');

   /**test request to see if its from android
    * you can update the user_agents collection to suit more specific needs
    */
   if($this->agent->platform() !== 'android'):

      //create session for all non-android platforms
      parent::sess_create();
   endif;
}
于 2015-07-02T12:50:20.507 に答える