【发布时间】:2013-05-17 13:55:48
【问题描述】:
我用lamp(linux+apache+mysql+php)做了一个webserver。我想设置cookie来保存用户信息,比如userid,username。所以load.php是这样的:
....
///login successful
session_start();
$_COOKIE["userid"]=$userid;
$response["success"]=1;
$response["message"]="load successful";
echo json_encode($response);
...
在 Android LoadActivity 中,我创建了一个扩展 AsyncTask 的类 WebLoader,并像这样覆盖函数 String doInBackground(String... params):
client=new DefaultHttpClient();
HttpPost post=new HttpPost(url_up);
...
HttpResponse response=client.execute(post);
HttpEntity entity=response.getEntity();
CookieStore mCookieStore = client.getCookieStore();
List<Cookie> cookies = mCookieStore.getCookies();
if(cookies.isEmpty())
Log.d("cookie","cookie is none");
for (int i = 0; i < cookies.size(); i++) {
if("userid".equals(cookies.get(i).getName()))
{
userid=Integer.parseInt(cookies.get(i).getValue());
}
}
当我运行应用程序时,logcat 说:cookie is none。 为什么 Cookie 没有?我已经在 load.php 中设置了。
【问题讨论】:
标签: android cookies httpclient