typecho ajax 登陆问题

讨论程序使用中的问题
回复
yeluo
帖子: 2
注册时间: 2019年 2月 10日 19:52

typecho ajax 登陆问题

帖子 yeluo »

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)
怎么解决
Diamond
帖子: 48
注册时间: 2018年 5月 2日 12:09

Re: typecho ajax 登陆问题

帖子 Diamond »

去掉 dataType:'json',应该就行了。

另外想问下我在用ajax请求自己的php逻辑,在那边用Typecho_Cookie这个类保存登陆cookie后,在前台页面获取不到cookie,登陆不成功,不知道为啥……(我模仿弄了个小demo却没问题)
yeluo
帖子: 2
注册时间: 2019年 2月 10日 19:52

Re: typecho ajax 登陆问题

帖子 yeluo »

QQ图片20190212095013.png
QQ图片20190212095013.png (45.7 KiB) 查看 2909 次
去掉 dataType:'json'之后,console.log(data)直接输出代码
QQ图片20190212095021.png
QQ图片20190212095021.png (14.42 KiB) 查看 2909 次
Diamond
帖子: 48
注册时间: 2018年 5月 2日 12:09

Re: typecho ajax 登陆问题

帖子 Diamond »

返回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("登录错误!");
}
});
回复