java ajax cookie_关于ajax提交后,服务端设置cookie的问题
在登录界面用ajax提交用户名和密码,服务端通过login()方法进行验证。
正确后存入session,同时判断客户端是否勾选记住登录,如果有setcookie。
问题出在服务端setcookie这语句应该是被执行的。但是从客户端里读取不到值。
不用ajax提交,直接页面调用login()是可以的。
可否帮忙分析下原因。
之前查到说是ajax提交会带头部信息,所以会导致服务端setcookie失效。但是服务端并没有报错。
然后用isset去检测这个cookie变量,是被设置的。但是echo $_COOKIE['xx']的时候,不显示。
补充:
这个是ajax代码
$.ajax({
type: "post",
data: {action: "login", username: $("#login_username").val(), password: $("#login_password").val(),remember:remember},
url: "../lib/ajax_test.php",
async: false
});
服务端就这样setcookie的代码
$cookie_state=setcookie("uid",$uid,time() + 3600);//设置cookie
本地cookie有cookie名,cookie值是空的
array (size=2)
'uid' => string '' (length=0)