<?php
namespace app\api\controller;
use app\api\service\UploadService;
use think\exception\ValidateException;
use think\facade\Validate;
use think\facade\Log;
use think\facade\Filesystem;
class Upload extends Common {
//文件上传
public function upload(){
$file = $this->request->file('file');
if(!Validate::fileSize($file,1024 * 1024 * 5)){
return $this->ajaxReturn($this->errorCodel,'图片过大');
}
if(!Validate::fileExt($file,'jpeg,jpg,png,gif')){
return $this->ajaxReturn($this->errorCodel,'图片格式错误');
}
$info = Filesystem::disk('public')->putFile(\utils\oss\OssService::setFilepath(),$file,'uniqid');
$url = \utils\oss\OssService::getAdminFileName(basename($info));
return $this->ajaxReturn($this->successCode,'返回成功',['src'=>config('app.url').$url,'name'=>$url]);
}
}
小程序前端
imgload:function(e){
let that = this
let index = e.currentTarget.dataset.index
wx.chooseImage({
success (res) {
const tempFilePaths = res.tempFilePaths
wx.uploadFile({
url: app.globalData.url+'shop/upload',
filePath: tempFilePaths[0],
name: 'file',
success (res){
let data = JSON.parse(res.data)
let keysrc = 'imgsrc'+index
let key = 'img'+index
that.setData({
[keysrc]:data.data.src,
[key]:data.data.name
})
}
})
}
})
},
uniapp端
uploadImage(){
let that = this
uni.chooseImage({
count: 1,
sizeType: ['compressed'], //original 压缩上传 compressed原图上传
sourceType: ['album', 'camera'],
success: function(res) {
uni.uploadFile({
url: api.upload_img, //接口地址
filePath: res.tempFilePaths[0],
name: 'file',
success: (res) => {
let data = JSON.parse(res.data)
that.good_img = data.src
that.good_img_name = data.name
}
});
}
});
},