0

私はPHPでWebサイトを構築しましたが、現在、それに対応するアプリケーションに取り組んでいます(ただし、PHPもAndroidも初めてではなく、それらを一緒にするだけです)、ログインしてステータスコードを取得できます:200応答(ログイン成功)、ただし、印刷するとヘッダーリストに表示されます

Header[] heads = response.getAllHeaders();

(phpで)私が呼び出したという事実を示していません

header("Location: success.php")または"Location: failure.php"失敗の場合、なぜ200を返すのかまったくわかりません。

しかし、php コードで設定した変数にアクセスする方法を本当に知っておく必要がある$_SESSIONので、自分の Web サイトと同じようにサインインしてナビゲーションを行うことができます。さらに情報が必要な場合は、お尋ねください。

4

3 に答える 3

2

セッション変数はサーバーで設定され、クライアントからはアクセスできません。Location200 が表示されている場合は、ヘッダーの 3XX 応答を既に見逃しています。

于 2012-04-04T04:53:09.323 に答える
0

アプリで動作する Web サイトのデフォルトの動作は、通信に使用される API を提供することです。

つまり、サーバーには、(たとえば json を介して) データを送信するときに呼び出す URL があることを意味します。サーバーはそれを処理し、フィードバックを返します。

あなたの場合、ログインデータを送信するだけで(SSLを使用してください!)、サーバーはリダイレクトするのではなく、そこからどこへ行くべきかデータを送り返して、アプリがすべてが正しいかどうかを認識できるようにします。

PHP の質問: PHP が $_SESSION データを Android アプリに送信しないと、Android が情報を取得する方法がありません。それ以外はすべて、PHP を実行している各サーバーの脆弱性になります。

于 2012-04-04T08:30:00.450 に答える
0

セッションに保存されているすべての値を取得するには、次のコードが必要です

<?php 
 session_start(); 
 Print_r ($_SESSION);
 ?> 

特定の変数値のみを取得する場合は、次のように渡します

<?php 
 // this starts the session 
 session_start(); 
 $ses=$_SESSION['XXX']; 
 echo $ses;
?> 

「XXX」はセッション変数名です

于 2012-04-04T05:52:44.240 に答える