承接 jackillll/laravel-filament-client-upload-cos 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

jackillll/laravel-filament-client-upload-cos

Composer 安装命令:

composer require jackillll/laravel-filament-client-upload-cos

包简介

Laravel Filament extension for Tencent Cloud COS client-side upload

README 文档

README

一个为 Laravel Filament 提供腾讯云 COS 客户端直传功能的扩展包。

特性

  • 🚀 客户端直传到腾讯云 COS,减轻服务器负担
  • 🔒 安全的签名机制,保护您的密钥
  • 📱 支持进度显示和错误处理
  • 🎨 与 Filament 完美集成
  • ⚡ 简单易用的 API

安装

使用 Composer 安装扩展包:

composer require jackillll/laravel-filament-client-upload-cos

发布配置文件:

php artisan vendor:publish --tag="filament-cos-upload-config"

配置

.env 文件中添加腾讯云 COS 配置:

COS_SECRET_ID=your_secret_id
COS_SECRET_KEY=your_secret_key
COS_REGION=ap-beijing
COS_BUCKET=your_bucket_name
COS_DOMAIN=https://your_bucket_name.cos.ap-beijing.myqcloud.com
COS_UPLOAD_PATH=uploads/
COS_MAX_FILE_SIZE=10485760

使用方法

基本用法

在 Filament 表单中使用 COS 直传:

use Filament\Forms\Components\FileUpload;

FileUpload::make('avatar')
    ->cosUpload() // 启用 COS 直传
    ->acceptedFileTypes(['image/jpeg', 'image/png'])
    ->maxSize(5120); // 5MB

自定义上传路径

FileUpload::make('document')
    ->cosUpload('documents/') // 自定义上传路径
    ->acceptedFileTypes(['application/pdf']);

配置上传选项

FileUpload::make('image')
    ->cosUpload()
    ->cosUploadConfig([
        'max_file_size' => 2097152, // 2MB
        'allowed_extensions' => ['jpg', 'png', 'gif'],
    ]);

上传成功回调

FileUpload::make('file')
    ->cosUpload()
    ->cosUploadSuccess(function ($file) {
        // 处理上传成功后的逻辑
        Log::info('File uploaded successfully', ['file' => $file]);
    });

使用自定义组件

如果您需要更多控制,可以使用扩展包提供的自定义组件:

use YourVendor\FilamentCosUpload\Components\FileUpload;

FileUpload::make('attachment')
    ->cosUpload('attachments/')
    ->cosUploadSuccess(function ($file) {
        // 自定义处理逻辑
    });

配置选项

config/filament-cos-upload.php 中可以配置以下选项:

return [
    // 腾讯云 COS 配置
    'secret_id' => env('COS_SECRET_ID'),
    'secret_key' => env('COS_SECRET_KEY'),
    'region' => env('COS_REGION', 'ap-beijing'),
    'bucket' => env('COS_BUCKET'),
    'domain' => env('COS_DOMAIN'),

    // 上传配置
    'max_file_size' => env('COS_MAX_FILE_SIZE', 10485760), // 10MB
    'allowed_extensions' => ['jpg', 'jpeg', 'png', 'gif', 'pdf', 'doc', 'docx'],
    'upload_path' => env('COS_UPLOAD_PATH', 'uploads/'),

    // 安全配置
    'signature_expires' => 3600, // 1小时
    'callback_url' => env('COS_CALLBACK_URL'),
];

工作原理

  1. 用户选择文件后,前端 JavaScript 向服务器请求上传签名
  2. 服务器生成安全的上传签名并返回给前端
  3. 前端使用签名直接上传文件到腾讯云 COS
  4. 上传完成后,前端通知服务器更新文件信息

安全性

  • 使用临时签名,避免在前端暴露密钥
  • 支持文件类型和大小限制
  • 签名有时效性,防止滥用

要求

  • PHP 8.1+
  • Laravel 10.0+ 或 11.0+
  • Filament 3.0+

许可证

MIT License

贡献

欢迎提交 Issue 和 Pull Request!

支持

如果您在使用过程中遇到问题,请:

  1. 查看文档和示例
  2. 搜索已有的 Issues
  3. 创建新的 Issue 并提供详细信息

jackillll/laravel-filament-client-upload-cos 适用场景与选型建议

jackillll/laravel-filament-client-upload-cos 是一款 基于 JavaScript 开发的 Composer 扩展包,目前已累计 5 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 09 月 18 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「upload」 「laravel」 「client-side」 「tencent」 「cos」 「filament」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 jackillll/laravel-filament-client-upload-cos 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 jackillll/laravel-filament-client-upload-cos 我们能提供哪些服务?
定制开发 / 二次开发

基于 jackillll/laravel-filament-client-upload-cos 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 5
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 26
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: JavaScript

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-09-18