微信公众平台模拟登陆问题
为了获得用户的头像和用户名,查了下相关资料,只有模拟登陆可以做到。
于是用snoopy模拟登陆代码如下
submit($submit,$post);
$cookie = '';
print_r($snoopy->headers);exit;
}
login();
?>
获得的头部信息中没有set-cookie 登陆失败,请问,我这段程序错在哪里了?还是说最近微信改了他的代码了,我看微信公众平台上的登陆js也是post过去这几个内容
var createloginform = function(e) {
var t = jquery, n = function() {
var e = !1;
inputs = m.getval();
switch (!1) {
case !!inputs.account:
s.trigger(warning, [ f, 你还没有输入帐号! ]);
break;
case !!inputs.password:
s.trigger(warning, [ l, 你还没有输入密码! ]);
break;
case !!inputs.verify || !!c.data(ishide):
s.trigger(warning, [ h, 你还没有输入验证码! ]), r();
break;
default:
e = !0;
}
return e;
}, r = function() {
h.val(), p.attr(src, /cgi-bin/verifycode?username= + m.getval().account + &r= + +(new date));
}, i = e.selector, s = t(i.error), o = t(i.errorarea), u = t(i.rememberacct), a = t(i.changeimglink), f = t(i.account).keydown(function(e) {
e.keycode == 13 && l.focus().select();
}), l = t(i.password).keydown(function(e) {
e.keycode == 13 && d.click();
}), c = t(i.verifyarea).data(ishide, 1).hide(), h = t(i.verify).keydown(function(e) {
e.keycode == 13 && (l.val() ? d.click() : l.focus().select());
}), p = t(i.verifyimg).click(r), d = t(i.loginbtn), v = function(e, t) {
return;
var n, r, i;
};
s.bind(warning, function(e, t, n) {
o.removeclass(dn), s.text(n).hide().fadein();
}), p.bind({
load: function() {
v([ f, l ]), c.show().data(ishide, 0), h.focus().select();
},
error: function() {}
}), s.bind(response, function(e, t, n) {
o.removeclass(dn), s.html(n).hide().fadein(), v([ f, l ], n), c.data(ishide) || r();
switch (t) {
case -3:
l.focus().select();
break;
case -6:
h.focus().select();
break;
default:
f.focus().select();
}
t != -32 && l.val();
});
var m = {
showverifyimg: r,
submit: function() {
if (!n()) return;
var e = m.getval();
t.post(/cgi-bin/login?lang=zh_cn, {
username: e.account,
pwd: t.md5(e.password.substr(0, 16)),
imgcode: c.data(ishide) ? : e.verify,
f: json
}, function(t) {
var n = t.errcode + , i;
u.hasclass(checkbox_checked) ? wxm.helpers.setcookie(remember_acct, e.account, 30) : wxm.helpers.setcookie(remember_acct, expired, -1);
switch (n) {
case -1:
i = 系统错误,请稍候再试。;
break;
case -2:
i = 帐号或密码错误。;
break;
case -3:
i = 您输入的帐号或者密码不正确,请重新输入。;
break;
case -4:
i = 不存在该帐户。;
break;
case -5:
i = 您目前处于访问受限状态。;
break;
case -6:
i = 请输入图中的验证码, r();
return;
case -7:
i = 此帐号已绑定私人微信号,不可用于公众平台登录。;
break;
case -8:
i = 邮箱已存在。;
break;
case -32:
i = 您输入的验证码不正确,请重新输入, r();
break;
case -200:
i = 因频繁提交虚假资料,该帐号被拒绝登录。;
break;
case -94:
i = 请使用邮箱登陆。;
break;
case 10:
i = 该公众会议号已经过期,无法再登录使用。;
break;
case 65201:
case 65202:
i = 成功登陆,正在跳转..., location.href = t.errmsg;
return;
case 0:
i = 成功登陆,正在跳转..., location.href = t.errmsg;
return;
case -100:
i = '海外帐号请在公众平台海外版登录,点击登录';
break;
default:
i = 未知的返回。;
return;
}
s.trigger(response, [ n, i ]);
}, json);
},
getval: function() {
return {
account: t.trim(f.val()),
password: t.trim(l.val()),
verify: t.trim(h.val())
};
},
setval: function(e, n) {
return t(i).val(n).length;
}
};
return a.click(function() {
m.showverifyimg();
}), d.click(m.submit), f.focus(), m;
};
也是这四个值
username: e.account,
pwd: t.md5(e.password.substr(0, 16)),
imgcode: c.data(ishide) ? : e.verify,