Open maoz1987 opened 2 years ago
$work->login->getQrcode();
/* return Array ( [qrcode_key] => eb67102ca70843de //二维码的key [qrcode_url] => https://work.weixin.qq.com/wwqrlogin/qrcode/eb67102ca70843de?login_type=login_admin ) /
最近企微更新了,还没来得及修复,他那个cookie 需要获取两次
不好意思,我是位产品经理,并不太看的懂后端php代码。 我clone了这个项目后,看到在login/Client.php中有这么一段:
private function getKey() { $params = [ 'r' => Params::random(), 'login_type' => 'login_admin', 'callback' => 'wwqrloginCallback', 'redirect_uri' => 'https://work.weixin.qq.com/wework_admin/loginpage_wx?pagekey=1614996011736462&from=myhome', 'crossorigin' => 1 ];
return $this->httpGet('wework_admin/wwqrlogin/get_key', $params);
}
/**
* 获取登录二维码key.
*
* @return array
*
* @author 读心印 <aa24615@qq.com>
*
*/
public function getQrcode()
{
$res = $this->getKey();
$key = $res['data']['qrcode_key'];
return [
'qrcode_key' => $key,
'qrcode_url' => $this->baseUri."wwqrlogin/qrcode/{$key}?login_type=login_admin"
];
}
此处使用 getQrcode()方法返回二维码链接时,需要用到的qrcode_key是通过上方的getKey()方法,调用企业微信: https://work.weixin.qq.com/wework_admin/wwqrlogin/get_key 的api来获取的,因为网上找不到企业微信这个api的说明文档,只搜到这个项目里有讲到。
$params = [ 'r' => Params::random(), 'login_type' => 'login_admin', 'callback' => 'wwqrloginCallback', 'redirect_uri' => 'https://work.weixin.qq.com/wework_admin/loginpage_wx?pagekey=1614996011736462&from=myhome', 'crossorigin' => 1 ];
想请教一下: 1.这里调用企业微信接口的各项入参是什么意思,还有这套机制是什么样的。 2.这个项目最终是可以从cookie中把企业微信的wwrtx.sid取出来是吧。
这不是官方的接口,你把你想实现的给开发就好了,开发会想办法
使用什么接口可以获取到qrcode_key来构建这个登录url呢?