41 lines
1.4 KiB
PHP
41 lines
1.4 KiB
PHP
<?php
|
|
|
|
namespace App\Endpoint\Api\Http\Controllers;
|
|
|
|
use App\Services\AliStsService;
|
|
use Illuminate\Http\Request;
|
|
|
|
class AliOssController extends Controller
|
|
{
|
|
/**
|
|
* @param \Illuminate\Http\Request $request
|
|
* @return void
|
|
*/
|
|
public function sts(Request $request, AliStsService $aliStsService)
|
|
{
|
|
return response()->json(array_merge([
|
|
'region_id'=> 'oss-'.config('filesystems.disks.aliyun.region'),
|
|
'bucket'=>config('filesystems.disks.aliyun.bucket'),
|
|
'host'=>config('filesystems.disks.aliyun.endpoint'),
|
|
'domain'=>config('filesystems.disks.aliyun.domain'),
|
|
], $aliStsService->createSts($request->user()?->phone)));
|
|
}
|
|
|
|
public function signature(Request $request, AliStsService $aliStsService)
|
|
{
|
|
$request->validate([
|
|
'filename' => 'required'
|
|
]);
|
|
$path = $request->input('path', 'uploads').'/'.date('Y-m-d');
|
|
|
|
$data = [
|
|
"accessid" => "",
|
|
"host" => "https://post-test.oss-cn-hangzhou.aliyuncs.com",
|
|
"policy" => "eyJleHBpcmF0aW9uIjoiMjAxNS0xMS0wNVQyMDoyMzoyM1oiLCJjxb25kaXRpb25zIjpbWyJjcb250ZW50LWxlbmd0aC1yYW5nZSIsMCwxMDQ4NTc2MDAwXSxbInN0YXJ0cy13aXRoIiwiJGtleSIsInVzZXItZGlyXC8i****",
|
|
"signature" => "VsxOcOudx******z93CLaXPz+4s=",
|
|
"expire" => 1446727949,
|
|
"dir" => $path.'/'.$request->input('filename'),
|
|
];
|
|
}
|
|
}
|