承接 arshad1114/laravel-dms-disk-server 相关项目开发

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

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

arshad1114/laravel-dms-disk-server

最新稳定版本:v1.0.3

Composer 安装命令:

composer require arshad1114/laravel-dms-disk-server

包简介

Laravel server-side receiver package for arshad1114/laravel-dms-disk. Exposes a standardized HTTP API so any consumer service can store files on this DMS using the native Storage facade.

README 文档

README

Latest Version on Packagist Total Downloads License

Laravel server-side receiver package for arshad1114/laravel-dms-disk.

Install this package in your DMS Laravel service. It exposes a standardized HTTP API so any consumer service using arshad1114/laravel-dms-disk can store, retrieve and manage files on this service using the native Storage facade — no custom HTTP code needed on either side.

How it works

Consumer service                         DMS service (this package)
────────────────                         ──────────────────────────
Storage::disk('dms')->put(...)           POST /dms-disk/upload
Storage::disk('dms')->get(...)    HTTP   GET  /dms-disk/file
Storage::disk('dms')->delete()   ────►  DELETE /dms-disk/file
...                                      ...
                                         Calls Storage::put(...)
                                         using your filesystems.php

Requirements

  • PHP 8.1+
  • Laravel 10, 11, or 12

Installation

composer require arshad1114/laravel-dms-disk-server

The DmsServerServiceProvider is auto-discovered. All routes, middleware and controller are registered automatically.

Publish the config:

php artisan vendor:publish --tag=dms-disk-server-config

Configuration

Add to your DMS service .env:

DMS_SERVER_TOKEN=your-strong-secret-token

Set your storage disk as you normally would in any Laravel app:

FILESYSTEM_DISK=local

The package uses whatever disk you configure here — local, S3, GCS, or any other Laravel-supported driver. It has zero opinion about where files are stored.

Full config reference

All options in config/dms-disk-server.php:

Key Env variable Default Description
token DMS_SERVER_TOKEN '' Bearer token consumers must send
max_file_size_kb DMS_SERVER_MAX_FILE_SIZE_KB 102400 Max upload size in KB (default 100 MB)
route_prefix DMS_SERVER_ROUTE_PREFIX 'dms-disk' URL prefix for all endpoints

API endpoints

All endpoints are protected by bearer token authentication.

Method Endpoint Description
POST /dms-disk/upload Upload a file
GET /dms-disk/file Download a file
DELETE /dms-disk/file Delete a file
GET /dms-disk/exists Check if a file exists
GET /dms-disk/url Get public URL
GET /dms-disk/temp-url Get temporary signed URL
POST /dms-disk/move Move or rename a file
GET /dms-disk/list List files in a directory
GET /dms-disk/metadata Get file metadata
POST /dms-disk/visibility Set file visibility

Authentication

Every request must include the token as a bearer token:

Authorization: Bearer your-strong-secret-token

Or as a custom header:

X-DMS-Token: your-strong-secret-token

Verify installation

After installing, verify all routes are registered:

php artisan route:list --path=dms-disk

You should see all 10 endpoints listed.

Troubleshooting

401 Unauthorized

DMS_SERVER_TOKEN in the DMS service does not match DMS_TOKEN in the consumer service. Make sure both values are identical.

500 DMS_SERVER_TOKEN is not set

DMS_SERVER_TOKEN is missing from .env. Add it:

DMS_SERVER_TOKEN=your-strong-secret-token

Routes not showing up

php artisan route:clear
php artisan route:list --path=dms-disk

If still missing, check the provider is registered:

php artisan package:discover

Consumer package

Install this on every service that needs to store files on this DMS:

arshad1114/laravel-dms-disk

Contributing

Contributions are welcome. Please:

  1. Fork the repo
  2. Create a feature branch: git checkout -b feat/your-feature
  3. Write tests for your change
  4. Make sure all tests pass: ./vendor/bin/phpunit
  5. Open a pull request

License

MIT — see LICENSE file.

统计信息

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

GitHub 信息

  • Stars: 4
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-03-15

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固