全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

详解用vue.js和laravel实现微信授权登陆

在laravel框架我们使用安正超的package

网址:https://easywechat.org/

有专门的针对laravel的安装包,请参见如下网址:https://github.com/overtrue/laravel-wechat

下面来说说具体的安装:

1.安装package

composer require overtrue/wechat

2.在app/config/app.php 中注册 ServiceProvider

Overtrue\LaravelWechat\ServiceProvider::class,

3.创建配置文件

复制代码 代码如下:
php artisan vendor:publish --provider="Overtrue\LaravelWechat\ServiceProvider"

请修改应用根目录下的 config/wechat.php 中对应的项即可

4.添加外观到 config/app.php 中的 aliases 部分:

'wechat' => Overtrue\LaravelWechat\Facade::class,

5.添加路由

Route::any('/wechat', 'WechatController@serve');//控制器请按自己的实际情况填写

特别注意:因为laravel自带token验证,建议使用laravel-cors解决跨域问题,具体安装见github地址:https://github.com/barryvdh/laravel-cors

6.控制器添加如下代码:

  /**
   * 处理微信的请求消息
   *
   * @return string
   */
  public function serve()
  {
    $wechat = app('wechat');
    $wechat->server->setMessageHandler(function($message){
      return "欢迎关注 overtrue!";
    });

    return $wechat->server->serve();
  }

7.配置好了路由和控制器,就得到了微信授权所需的URL,此时打开微信公众平台,在“开发—基本配置”页面,点击“修改配置”按钮,得到:

修改配置页面

1) 将刚才的URL填入URL输入框内

2) token可自定义

3) EncodingAESKey 可随机生成

4) 消息加密用安全模式

8.在.env文件中配置以下参数

#微信配置,若不知道WECHAT_TOKEN和WECHAT_AES_KEY请继续往下看
WECHAT_APPID=
WECHAT_SECRET=
WECHAT_TOKEN=
WECHAT_AES_KEY=
#微信支付用
WECHAT_PAYMENT_MERCHANT_ID=
WECHAT_PAYMENT_KEY=

最后一步,填写完成后提交,微信将会调用此URL接口来验证,如果验证成功,就通过配置。

在公众平台,还有一项重要配置,如下:

在微信公众平台“接口权限”—“网页授权”—“网页授权域名”,填上服务器端域名(注:请仔细阅读平台上要求,特别注意得是,这里是服务器域名,不是客户端域名!)

接下来就可以实现微信授权登陆的功能了

10.在 app/Http/Kernel.php 中添加路由中间件:

protected $routeMiddleware = [
  // ...
  'wechat.oauth' => \Overtrue\LaravelWechat\Middleware\OAuthAuthenticate::class,
];

10.在路由中添加授权登陆的路由

Route::group(['middleware' => ['wechat.oauth']], function () {
  Route::get('/auth','UsersController@wechatAuth');
});

11.在以上路由相应的控制器中添加wechatAuth方法

public function wechatAuth(Request $request)
  {
    $userinfo = session('wechat.oauth_user')->original; // 拿到授权用户资料

    //这里写用户注册到mysql的相关逻辑代码,请自行补充

  }

12.在微信中打开此路由下的url就发现出现微信认证的界面,如未成功请自行检查你的配置和代码。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# laravel  # vue  # 微信登陆  # 微信登录  # Laravel中前端js上传图片到七牛云的示例代码  # vuejs+element-ui+laravel5.4上传文件的示例代码  # Laravel 中使用 Vue.js 实现基于 Ajax 的表单提交错误验证操作  # 详解用vue.js和laravel实现微信支付  # JS中如何实现Laravel的route函数详解  # 使用JS手写一个类似 Laravel 验证器的表单验证器  # 自己的  # 好了  # 将会  # 请自行  # 所需  # 自定义  # 就得  # 实际情况  # 自带  # 请按  # 若不  # 填入  # 用户注册  # 配置文件  # 信中  # 大家多多  # 就可以  # 输入框  # 基本配置  # 如未 


相关文章: 建站之星后台密码如何安全设置与找回?  独立制作一个网站多少钱,建立网站需要花多少钱?  香港网站服务器数量如何影响SEO优化效果?  建站之星价格显示格式升级,你的预算足够吗?  香港服务器WordPress建站指南:SEO优化与高效部署策略  简单实现Android验证码  c# 在ASP.NET Core中管理和取消后台任务  如何设置并定期更换建站之星安全管理员密码?  C#怎么创建控制台应用 C# Console App项目创建方法  建站之星客服服务时间及联系方式如何?  PHP正则匹配日期和时间(时间戳转换)的实例代码  如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南  娃派WAP自助建站:免费模板+移动优化,快速打造专业网站  济南专业网站制作公司,济南信息工程学校怎么样?  重庆市网站制作公司,重庆招聘网站哪个好?  宝塔面板创建网站无法访问?如何快速排查修复?  官网建站费用明细查询_企业建站套餐价格及收费标准指南  动图在线制作网站有哪些,滑动动图图集怎么做?  香港服务器如何优化才能显著提升网站加载速度?  沈阳个人网站制作公司,哪个网站能考到沈阳事业编招聘的信息?  建站主机与虚拟主机有何区别?如何选择最优方案?  高防服务器租用如何选择配置与防御等级?  ,网站推广常用方法?  建站之星在线客服如何快速接入解答?  如何快速搭建安全的FTP站点?  如何注册花生壳免费域名并搭建个人网站?  如何挑选优质建站一级代理提升网站排名?  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  公司网站制作需要多少钱,找人做公司网站需要多少钱?  北京网页设计制作网站有哪些,继续教育自动播放怎么设置?  建站主机服务器选型指南与性能优化方案解析  香港服务器租用费用高吗?如何避免常见误区?  如何在阿里云域名上完成建站全流程?  网站制作的步骤包括,正确网址格式怎么写?  网站制作壁纸教程视频,电脑壁纸网站?  如何通过宝塔面板实现本地网站访问?  企业网站制作公司网页,推荐几家专业的天津网站制作公司?  北京制作网站的公司,北京铁路集团官方网站?  头像制作网站在线制作软件,dw网页背景图像怎么设置?  专业公司网站制作公司,用什么语言做企业网站比较好?  定制建站流程步骤详解:一站式方案设计与开发指南  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  javascript基本数据类型及类型检测常用方法小结  黑客如何利用漏洞与弱口令入侵网站服务器?  济南网站制作的价格,历城一职专官方网站?  陕西网站制作公司有哪些,陕西凌云电器有限公司官网?  如何优化Golang Web性能_Golang HTTP服务器性能提升方法  弹幕视频网站制作教程下载,弹幕视频网站是什么意思?  网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。