|
@@ -10,6 +10,8 @@ namespace Modules\Camera\Http\Controllers\Api;
|
|
|
|
|
|
use App\Enum\ApiEnum;
|
|
|
use App\Http\Controllers\Api\BaseController;
|
|
|
+use Illuminate\Http\Request;
|
|
|
+use Illuminate\Support\Facades\Config;
|
|
|
use Illuminate\Support\Facades\Input;
|
|
|
use Illuminate\Support\Facades\Log;
|
|
|
use Modules\Camera\Entities\CameraList;
|
|
@@ -18,6 +20,7 @@ use Modules\Camera\Services\CameraServices;
|
|
|
use Modules\Mine\Entities\MineList;
|
|
|
use Modules\Mine\Entities\MineListExt;
|
|
|
use DB;
|
|
|
+use OSS\OssClient;
|
|
|
|
|
|
class CameraApiController extends BaseController
|
|
|
{
|
|
@@ -844,4 +847,67 @@ class CameraApiController extends BaseController
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
+ //文章图片上传至阿里云
|
|
|
+ public function ossUrl(){
|
|
|
+// $params = $request->all();
|
|
|
+
|
|
|
+ $result = $this->downloadFile('https://wechatpay.cercai.com/uploads/images/17.jpg');
|
|
|
+ dd($result);
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
+
|
|
|
+ //下载文件
|
|
|
+ public function downloadFile($file_path)
|
|
|
+ {
|
|
|
+ $rename = mt_rand(1111111,9999999);
|
|
|
+
|
|
|
+ if (!$file_path) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ set_time_limit(0);
|
|
|
+
|
|
|
+ $ch = curl_init($file_path);
|
|
|
+ curl_setopt($ch, CURLOPT_HEADER, 0);
|
|
|
+ curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
|
|
+ curl_setopt($ch, CURLOPT_BINARYTRANSFER,1);
|
|
|
+ $rawdata = curl_exec ($ch);
|
|
|
+ curl_close ($ch);
|
|
|
+ // 使用中文文件名需要转码
|
|
|
+ $fp = fopen(public_path() . '/filedownload/' . $rename.'.jpg', 'w');
|
|
|
+ fwrite($fp, $rawdata);
|
|
|
+ fclose($fp);
|
|
|
+
|
|
|
+ $file_name = $rename;
|
|
|
+
|
|
|
+ //上传文件
|
|
|
+ $file_oss_path = $this->uploadFile($file_name);
|
|
|
+ return $file_oss_path;
|
|
|
+ }
|
|
|
+
|
|
|
+ //上传文件
|
|
|
+ public function uploadFile($file_name)
|
|
|
+ {
|
|
|
+ try{
|
|
|
+ $oss = new OssClient(
|
|
|
+ Config::get('filesystems.disks.oss_view.access_key'),
|
|
|
+ Config::get('filesystems.disks.oss_view.secret_key'),
|
|
|
+ Config::get('filesystems.disks.oss_view.endpoint')
|
|
|
+ );
|
|
|
+
|
|
|
+ $file_path = public_path() . '/filedownload/' . $file_name.'.jpg';
|
|
|
+ $res = $oss->uploadFile(Config::get('filesystems.disks.oss_view.bucket'), $file_name.'.jpeg', $file_path);
|
|
|
+ } catch(\OssException $e) {
|
|
|
+ printf(__FUNCTION__ . ": FAILED\n");
|
|
|
+ printf($e->getMessage() . "\n");
|
|
|
+
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if (isset($res['info']['url']) && $res['info']['url']) {
|
|
|
+ unlink($file_path);
|
|
|
+ return urldecode($res['info']['url']);
|
|
|
+ } else {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|