微信第三方登录

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)

微信第三方登录

实现微信第三方登录

Android Learning:微信第三方登录

不懂第三方网站App如何接入微信登录怎么办?这里我详解单点登录之第三方微信登录(建议收藏)

如何设计 QQ微信微博Github 等等,第三方账号登陆 ?(附表设计)