首页 > 其他分享 >通过fatsadmin阿里云OSS存储插件-生成二维码图片,并上传阿里云OSS存储空间里

通过fatsadmin阿里云OSS存储插件-生成二维码图片,并上传阿里云OSS存储空间里

时间:2024-04-28 15:55:20浏览次数:17  
标签:插件 OSS filename token 阿里 path configAliOss

# 生成二维码并上传到阿里云OSS
if (!function_exists('create_qrcode')){
    function create_qrcode($url){
        $filename = time().rand(100,999).'.png';
        $path = 'uploads/qrcode/'.$filename;
        $code = new QRcode();
        $code->png($url,$path)->entry();
        $tokenUrl = request()->domain()."/addons/alioss/index/params";
        # 通过插件-获取阿里云OSS配置
        $configAliOss = get_addon_config('alioss');
        # 生成 token
        $data = ['deadline' => time().$configAliOss['endpoint']];
        $signature = hash_hmac('sha1', json_encode($data), $configAliOss['accessKeySecret'], true);
        $token =  $configAliOss['accessKeyId'] . ':' . base64_encode($signature) . ':' . base64_encode(json_encode($data));
        $params = [
            'name' => $filename,
            'md5' => md5($filename),
            'chunk' => 0,
            'aliosstoken' => $token,
        ];
        $response = posturl($tokenUrl,$params);
        if (!$response){
            return false;
        }
        $real_path = ROOT_PATH."public".DS.$path;
        $file = new CURLFile(realpath($real_path));
        $dataPost = [
            'file'      =>      $file,
            'aliosstoken'=>      $token
        ];
        $uploadUrl = request()->domain()."/addons/alioss/index/upload";
        $res = posturl($uploadUrl,$dataPost);
        if (!$res){
            return false;
        }
        return $res['data']['url'];
    }
}

 

 

标签:插件,OSS,filename,token,阿里,path,configAliOss
From: https://www.cnblogs.com/ixiangang06/p/18163885

相关文章

  • Quick Go To Selected File Path - 快速路径跳转 - vscode 插件推荐
    QuickGoToSelectedFilePath-快速路径跳转-vscode插件推荐差个插件的快捷键是Ctrl+E一直找一个鼠标点就过去的,一直没找到比较通用的,这个算是比较不错的~QuickGoToSelectedFilePathhttps://marketplace.visualstudio.com/items?itemName=duXing.quick-go-to-s......
  • 无网络安装插件
    无网络安装插件1、准备外网电脑,搭建所需python插件2、将需要导出的插件,导出列表pipfreeze>.\req.txt3、将插件导出到目录pipdownload-r.\req.txt-d.\pkg4、将req.txt文件和pkg目录拷入无网络电脑5、在无网络电脑安装,进入到.\python\Scripts目录下,管理员运行......
  • 阿里云短信服务
    publicstaticcom.aliyun.dysmsapi20170525.ClientcreateClient(StringaccessKeyId,StringaccessKeySecret)throwsException{//创建短信服务客户端并返回//创建一个配置对象com.aliyun.teaopenapi.models.Configconfig=newcom.aliyun.teaopenapi.mo......
  • idea插件之apifox自动化测试
    /***测试apifox插件自动化读取*/@RestController@RequestMapping("/api")publicclassSwaggerApiFoxController{/***这是一个测试方法*@return*/@RequestMapping("/test")publicStringtest(){return"test";}}1......
  • 云原生最佳实践系列 7:基于 OSS Object FC 实现非结构化文件实时处理
    01方案概述现在绝大多数客户都有很多非结构化的数据存在OSS中,以图片,视频,音频居多。举一个图片处理的场景,现在各种终端种类繁多,不同的终端对图片的格式、分辨率要求也不同,所以一张图片往往会有很多张衍生图,那如果所有的衍生图都存在OSS中,那存储的成本会增加,所以就可以通......
  • 大模型的涌现能力与预训练loss的关系比模型参数更紧密
    清华大学和智谱AI团队研究发现:大模型的涌现能力与预训练loss的关系比模型参数更紧密。https://arxiv.org/pdf/2403.15796这篇论文《从损失角度理解语言模型的涌现能力》通过将预训练损失作为评估指标,强调了在理解和评价语言模型的涌现能力时,损失的重要性可能超过了模型参数......
  • 聊聊流言协议(Gossip)
    什么是流言协议?在分布式系统中,以下两个是典型的问题:维护系统状态(节点的活跃性)节点间的通信解决这些问题的解决方案之一如下:集中式状态管理服务对等状态管理服务集中式状态管理服务像ApacheZookeeper这样的集中式状态管理服务可以被配置为服务发现,以跟踪系统中每个......
  • PropertyChanged.Fody自动通知属性插件
    NuGet安装安装 PropertyChanged.FodyNuGet包并更新FodyNuGet包:InstallthePropertyChanged.FodyNuGetpackage andupdatethe FodyNuGetpackage:PM>Install-PackageFodyPM>Install-PackagePropertyChanged.Fody 这是必需的,因为NuGet始终默认为任何依......
  • notepad++ 安装compare文件对比插件&失败解决办法
    1.首先notepad++安装compare方法:在菜单栏点击“插件”》插件管理   搜索:compare 点击YES 因为国内网络原因,可能会安装失败,也可能安装比较久。2.自己解压安装:  下载解压包:链接:https://pan.baidu.com/s/1B8hZJCJ8PLZgwdYzQeWGpQ提取码:7n2s  点击打开插件......
  • npm install 安装插件报错
    1、npminstall@ant-design/charts--save  报错 npmERR!codeERR_SOCKET_TIMEOUTnpmERR!networkSockettimeoutnpmERR!networkThisisaproblemrelatedtonetworkconnectivity.npmERR!networkInmostcasesyouarebehindaproxyorhavebadnetwo......