lifetime/service

1.12.5 2022-03-08 07:02 UTC

README

本类库封装了一些常见的平台的部分接口
调用的逻辑为:平台::业务->功能->操作

比如:微信公众平台获取用户信息

$order = \service\WeChat::official()->user()->getUserInfo();

目前包含的平台有:

  1. 支付宝和阿里云
  2. 微信
  3. 字节跳动
  4. 七牛云

配置

类库可以自动获取tp5.0、tp5.1、tp6.0和laravel的配置作为全局配置
比如 tp5.1,可以在config目录中添加一个 service.php 文件,加入如下配置

<?php

return [
    // 阿里云(支付宝)相关参数
    'ali' => [
        'accessKey_id' => '',
        'accessKey_secret' => '',
        // OSS相关配置
        'oss_endpoint' => '',
        'oss_bucketName' => '',
        // 支付相关参数
        'sandbox' => true, // 是否是沙箱环境
        'appid' => '20210001166', // 支付宝APPID (测试数据)
        'public_key' => '', // 应用公钥
        'private_key' => '', // 应用私钥
        'alipay_public_key' => '', // 支付宝公钥
    ],
    // 微信相关参数
    'wechat' => [
        // 公众号
        'official_appid' => '', // 公众号appid(测试数据)
        'official_app_secret' => '', // 公众号sercet(测试数据)
        // 小程序
        'miniapp_appid' => '',
        'miniapp_app_secret' => '',
        'mch_id' => '', // 商户ID (测试数据)
        'mch_key' => '', // 商户支付密钥 (测试数据)
        'mch_key_v3' => '', // 商户支付密钥 v3(测试数据)
        'ssl_cer' => '', // 证书cert.pem路径
        'ssl_key' => '', // 证书key.pem路径
    ],
    // 字节跳动相关参数
    'byteDance' => [
        'miniapp_appid' => '', // 字节小程序APPID
        'miniapp_secret' => '', // 字节小程序APP Secret
        'miniapp_pay_mch_id' => '', // 字节小程序支付商户号
        'miniapp_pay_appid' => '', // 字节小程序支付APPPID
        'miniapp_pay_secret' => '', // 字节小程序支付secret
    ],
    // 类库运行相关参数
    'cache_path' => '', // 缓存目录
    'cache_callable' => [ // 自定义缓存操作方法(如果设置了此参数,缓存目录将不再生效)
        'set' => null, // 写入缓存
        'get' => null, // 获取缓存
        'del' => null, // 删除缓存
        'put' => null, // 写入文件
    ]
];

注意:默认获取配置的key为 service

如果想更换这个key为 my-service,可以这样操作

<?php
  \service\Config::setKey('my-service');
>

如果类库无法获取到全局配置,可以初始化配置

<?php
  $config = [
    // 阿里云(支付宝)相关参数
    'ali' => [
        // OSS相关配置
        'accessKey_id' => '',
        'accessKey_secret' => '',
        'oss_endpoint' => '',
        'oss_bucketName' => '',
        // 支付相关参数
        'sandbox' => true, // 是否是沙箱环境
        'appid' => '20210001166', // 支付宝APPID (测试数据)
        'public_key' => '', // 应用公钥
        'private_key' => '', // 应用私钥
        'alipay_public_key' => '', // 支付宝公钥
    ]
  ];
  \service\Config::init($config);
>

注意:使用初始化方法之后,类库不会再从配置文件中获取配置;初始化必须在所有操作之前进行。

支持的平台和业务如下

平台 业务 功能 操作
WeChat - 微信 official - 公众平台 oauth - 网页授权 getCode - 请求code(授权第一步)
getUserAccessToken - 获取access_token
refreshAccessToken - 刷新access_token
getUserinfo - 获取用户个人信息
checkAccessToken - 校验授权凭证是否有效
getJsSdkSign - 获取JS-SDK使用权限
template - 模板消息 setIndustry - 设置所属行业
getIndustry - 获取设置的行业信息
addTemplate - 添加模板
getAllPrivateTemplate - 获取模板列表
delPrivateTemplate - 删除模板
send - 发送模板消息
user - 用户管理 createTag - 创建标签
getTag - 获取已经创建的用户标签
updateTag - 更新标签信息
delTag - 删除标签
getTagUser - 获取某个标签下的粉丝列表
batchBindTag - 批量为用户打标签
batchUnBindTag - 批量为用户取消标签
getUserTag - 获取用户身上的标签
updateRemark - 设置用户备注名
getUserinfo - 获取用户基本信息(UnionID机制)
batchGetUserInfo - 批量获取用户基本信息
getUserList - 获取用户列表
getBlackList - 获取黑名单列表
bacthBlack - 批量拉黑用户
bacthUnBlack - 批量取消拉黑用户
pay - 支付v2 app - app支付 pay - 下单支付
query - 查询订单
reverse - 撤销订单
refund - 申请退款
refundQuery - 退款查询
notify - 异步通知验签
jsapi - JSAPI支付 pay - 下单支付
query - 查询订单
reverse - 撤销订单
refund - 申请退款
refundQuery - 退款查询
notify - 异步通知验签
native - Native支付 pay - 下单支付
query - 查询订单
reverse - 撤销订单
refund - 申请退款
refundQuery - 退款查询
notify - 异步通知验签
h5 - H5支付 pay - 下单支付
query - 查询订单
reverse - 撤销订单
refund - 申请退款
refundQuery - 退款查询
notify - 异步通知验签
miniApp - 小程序支付 pay - 下单支付
query - 查询订单
reverse - 撤销订单
refund - 申请退款
refundQuery - 退款查询
notify - 异步通知验签
payV3 - 支付v3 jsapi - JSAPI支付 pay - 下单支付
query - 查询订单
close - 关闭订单
notify - 异步通知验签
native - Native支付 pay - 下单支付
query - 查询订单
close - 关闭订单
notify - 异步通知验签
app - app支付 pay - 下单支付
query - 查询订单
close - 关闭订单
notify - 异步通知验签
h5 - H5支付 pay - 下单支付
query - 查询订单
close - 关闭订单
notify - 异步通知验签
miniApp - 小程序支付 pay - 下单支付
query - 查询订单
close - 关闭订单
notify - 异步通知验签
miniapp - 小程序 login - 登录 code2Session - 登录凭证校验
userInfo - 用户信息 check - 验证用户信息
decodeUserInfo - 用户信息解密
getPaidUnionId - 用户支付完成后,获取该用户的 UnionId
Ali - 支付宝或者阿里云 pay - 支付 page - Web 页面支付
wap - 手机网站支付
app - APP 支付
notify - 异步通知验签
query - 查询订单
refund - 申请退款
refundQuery - 退款查询
ByteDance - 字节跳动 miniapp - 字节小程序 code2Session - 获取 session_key 和 openId
checkUserInfo - 验证用户信息
getPayOrderInfo - 获取支付订单信息
createQRCode - 获取小程序或小游戏的二维码