微信小程序+laravel8 实现登录功能封装返回openid方法

获取code后的处理封装

Guzzle-http: Guzzle, PHP HTTP 客户端 — Guzzle中文文档

安装一下此插件:

composer require guzzlehttp/guzzle

config里创建一个配置文件

return [
    'url'=>"https://api.weixin.qq.com/sns/jscode2session?appid=%s&secret=%s&js_code=%s&grant_type=authorization_code",
];

封装获取openid

<?php
namespace App\Http\business;

use GuzzleHttp\Client;

class Login
{
    /**
     * 获取openid
     * @param $code
     * @return false|string
     * @throws \GuzzleHttp\Exception\GuzzleException
     */
    public static function login($code){
        $AppID="AppID";
        $AppSecret="AppSecret";
        //取出url
        $url=config('powers.url');
        $url=sprintf($url,$AppID,$AppSecret,$code);
        //申请一个请求类,并指定请求的过期时间
        $client=new Client(['timeout'=>5]);
        //发送请求
        $res=$client->get($url);
        //获取出主要的返回值内容
        $body=(string)$res->getBody();
        //转换成数组
        $arr=json_decode($body,true);
        return $arr;
    }
}
本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 1
抄你码科技有限公司

easywechat不香吗?

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!