typecho ajax登陆 反回responseText返回的为html代码!
帐户密码为admin/123456
<script>
$.ajax({
url: "<?php $this->options->loginAction(); ?>",
data:{'name':'admin','password':'123456'},
type: "POST",
dataType:'json',
success:function(data){
$('#errormsg').html("2");
console.log(data);
},
error : function(data) {
$('#errormsg').html("1");
console.log(data);
}
});
</script>
返回的:
readyState:4
status:200
statusText:parsererror
responseText:html代码
一直是error:function(data)
怎么解决
typecho ajax 登陆问题
Re: typecho ajax 登陆问题
去掉 dataType:'json',应该就行了。
另外想问下我在用ajax请求自己的php逻辑,在那边用Typecho_Cookie这个类保存登陆cookie后,在前台页面获取不到cookie,登陆不成功,不知道为啥……(我模仿弄了个小demo却没问题)
另外想问下我在用ajax请求自己的php逻辑,在那边用Typecho_Cookie这个类保存登陆cookie后,在前台页面获取不到cookie,登陆不成功,不知道为啥……(我模仿弄了个小demo却没问题)
Re: typecho ajax 登陆问题
去掉 dataType:'json'之后,console.log(data)直接输出代码
Re: typecho ajax 登陆问题
返回html是返回,但已经登陆成功了,具体原理不明,一般都这么写:(我现在的问题是想在typecho外的其他系统里实现登陆typecho,不知道怎么判断的用户登录状态,用的cookie还是session不清楚……Typecho_Cookie::set('__typecho_uid', $user['uid'], 0);)这个总不管用……哪个大神知道啊=_=!
$.ajax({
url: $(".login_form").attr("action"),
type: $(".login_form").attr("method"),
data: $(".login_form").serializeArray(),
success: function(data) {
location.reload();
},
error: function() {
alert("登录错误!");
}
});
$.ajax({
url: $(".login_form").attr("action"),
type: $(".login_form").attr("method"),
data: $(".login_form").serializeArray(),
success: function(data) {
location.reload();
},
error: function() {
alert("登录错误!");
}
});