微信第三方登录
Posted spectrelb
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信第三方登录相关的知识,希望对你有一定的参考价值。
到这里https://open.weixin.qq.com,申请成为开发者,然后等着审核通过
通过了,创建网站应用,微信的回调域写个主域名就可以了,然后等着审核通过
通过了,得到正确的appid和appkey
利用composer安装 github地址:https://github.com/Yurunsoft/YurunOAuthLogin
composer require yurunsoft/yurun-oauth-login
写个首页,点击跳到login.php
<?php require dirname(__DIR__) . ‘/vendor/autoload.php‘; $wxOAuth = new \Yurun\OAuthLogin\Weixin\OAuth2(‘yourapikey‘, ‘yourapisecret‘,‘callback_url‘); $url = $wxOAuth->getAuthUrl(); $_SESSION[‘YURUN_WEIXIN_STATE‘] = $wxOAuth->state; header(‘location:‘ . $url);
回调地址
<?php require dirname(__DIR__) . ‘/vendor/autoload.php‘; $wxOAuth = new \Yurun\OAuthLogin\Weixin\OAuth2(‘yourapikey‘, ‘yourapisecret‘,‘callback_url‘); var_dump( ‘access_token:‘, $wxOAuth->getAccessToken($_SESSION[‘YURUN_WEIXIN_STATE‘]), ‘我也是access_token:‘, $wxOAuth->accessToken, ‘请求返回:‘, $wxOAuth->result ); var_dump( ‘用户资料:‘, $wxOAuth->getUserInfo(), ‘openid:‘, $wxOAuth->openid );
会打印出登陆用户的信息,
拿到用户的nickname的时候,有很多带有emoji表情的名字,用了一个方法,过滤掉了(简单粗暴),但是存到数据库,在完美的显示出来,没有实现,太麻烦了
// 过滤掉emoji表情 private function filterEmoji($str) { $str = preg_replace_callback( ‘/./u‘, function (array $match) { return strlen($match[0]) >= 4 ? ‘‘ : $match[0]; }, $str); return $str; }
以上是关于微信第三方登录的主要内容,如果未能解决你的问题,请参考以下文章
公众号微信第三方登录(静默授权和非静默授权)(具体代码:U盘 新浪云SAE)