2012-01-28 6 views
1

私はLAMPベースのAndroidアプリを書いています。
アプリにログイン機能があります。
すべての操作機能が完璧です。しかし、

Android HttpURLConnection:Linuxが毎回セッションファイルを作る理由

Why Linux makes session files everytimes
only when I connect on phone which utilizing httpURLConnection ???

私はWEBブラウザ(クローム)でログインせずにWebページを接続し、
Linuxは、セッションは、それが<空のファイルになり---(A)

そして、私はWebブラウザとログインをWebBrowser(Chrome)でも接続しています。
Linuxは(A)セッションファイルにセッションファイルを追加します。

so。結果。 Webブラウザを使用すると、linuxはセッションファイルを作成します。

しかし、それは意味


私は私がログインしている場合
Linuxはセッションファイルeverytimesを作る電話(アプリ)、に接続し、

のAppログイン - >
backpress(Linuxは、セッションを作ります) - >アプリのログイン - >(Linuxは、セッションを作る)
backpress - >アプリケーションログイン - >(Linuxは、セッションを作る)

**私はPHPSESSIDをチェックしますLogcat、およびキャッシュSQL、利用クッキー同期マネージャ

Android HttpURLConnection Header Part Source 

    URL urlLogin = new URL(url); 
    HttpURLConnection httpConn = (HttpURLConnection) urlLogin.openConnection(); 
    httpConn.setDefaultUseCaches(true); 
    httpConn.setDoInput(true); 
    httpConn.setDoOutput(true); 
    httpConn.setUseCaches(true); 
    httpConn.setInstanceFollowRedirects(false); 
    httpConn.setRequestMethod("POST"); 
    httpConn.setRequestProperty("content-type", "application/x-www-form-urlencoded;charset=utf-8"); 
    httpConn.setRequestProperty("Connection", "keep-alive"); 

PHPログインサーバ部分HttpUrlConnectionのための "セッションファイル" == "セッションクッキー"、おそらくあなたが有効になっていないクッキーの管理を想定し

<?php 
session_start(); 
require_once "dbconn.php"; 
require_once "check.php"; 
require_once "process.php"; 

$email = $_POST['email']; 
$pw = $_POST['pw']; 

$process = new Process($_POST); 

if ($process->checkLogin()) { //Check Login matches 
    $_SESSION['email'] = $email; 
    $_SESSION['pw'] = $pw; 
    $_SESSION['logged'] = true; 

    $errcode = 100; 
} 

答えて

1

in the documentationを説明したように、あなたはこのためにCookieHandlerCookieManagerを使用する必要があります。

CookieManager cookieManager = new CookieManager(); 
CookieHandler.setDefault(cookieManager); 
+0

Thnxk、しかし、CookieHandler.setDefault(クッキーハンドラの変数が必要) –

+0

と、新しいCookieManager()< - このエラーを表示します:コンストラクタCookieManager()が表示されません –

+0

あなたが間違った 'CookieManager'クラスをインポートした疑いがあります。 'java.net.CookieManager'が必要です。 – CommonsWare

関連する問題