代码拉取完成,页面将自动刷新
English | 简体中文
Web端直接上传数据至OSS, 服务端签名直传并设置上传回调.
composer require alphasnow/aliyun-oss-appserver
修改环境配置 .env
OSS_ACCESS_KEY_ID=<必填, 阿里云的AccessKeyId, 示例: LT************Hz>
OSS_ACCESS_KEY_SECRET=<必填, 阿里云的AccessKeySecret, 示例: Q5**************************PD>
OSS_BUCKET=<必填, 对象存储的Bucket, 示例: my-files>
OSS_ENDPOINT=<必填, 对象存储的Endpoint, 示例: oss-cn-hangzhou.aliyuncs.com>
OSS_CALLBACK_URL=<选填, 默认回调地址, 示例: https://my-domain.com/callback>
OSS_POLICY_MAX_SIZE=<选填, 默认最大文件大小1000MB, 示例: 1048576000>
OSS_POLICY_EXPIRE_TIME=<选填, 默认过期时间3600秒, 示例: 3600>
OSS_POLICY_USER_DIR=<选填, 默认上传目录upload/, 示例: upload/>
(可选) 修改配置文件 config/oss-appserver.php
php artisan vendor:publish --provider=AlphaSnow\OSS\AppServer\ServiceProvider
添加路由routes/api.php
, 使用默认控制器.
Route::get("app-server/oss-token", "\AlphaSnow\OSS\AppServer\Laravel\ServerController@token");
Route::post("app-server/oss-callback", "\AlphaSnow\OSS\AppServer\Laravel\ServerController@callback");
upload.js
的第30行代码,修改为实际服务器地址
// serverUrl = "http://88.88.88.88:8888"
serverUrl = "http://laravel.local/api/app-server/oss-token"
use AlphaSnow\OSS\AppServer\Factory;
$token = (new Factory($config))->makeToken();
// 修改直传服务器地址
$token->access()->setOssHost("https://bucket.endpoint.com");
// 修改上传目录/超时时间60秒/最大文件限制500M
$token->policy()->setUserDir("upload/")->setExpireTime(60)->setMaxSize(500*1024*1024);
// 修改回调地址/回调数据/回调请求头
$token->callback()->setCallbackUrl("http://domain.com/callback")
->setCallbackBody("filename=\${object}&size=\${size}&mimeType=\${mimeType}&height=\${imageInfo.height}&width=\${imageInfo.width}")
->setCallbackBodyType("application/x-www-form-urlencoded");
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。