| 微信小程序端: onChangeTap:function(e){
      let Imgs = e.detail.current;
      let token = wx.getStorageSync('token');
      wx.uploadFile({
        filePath: Imgs[0],
        name: 'file',
        url: 'http://www.week3.com/index.php/api/upimg',
        header:{
          'content-type':"application/json",
          'Access-Control-Allow-Origin':'*',
          'Authorization':`Bearer ${token}`
        },
        success:res=>{
          console.log(res)
        }
      })
  },
 PHP端创建服务层来封装上传阿里云方法: 创建服务层参考:Laravel框架:通过自定义命令创建service服务层初体验控制器层接收小程序传来的图片方法:
 $pathName = $request->file('file')->getPathname();
 调用服务层上传方法: public static function upimgs($pathName)
    {
        $accessKeyId = "LTAI5t6P9QfQTMB2FmifqGdj";
        $accessKeySecret = "Hgmd98Fgsas1LZ4qgCzMOK8AQ6d1Mt";
        $endpoint = "http://oss-cn-shanghai.aliyuncs.com";
        $bucket = "zhaonames-shanghai";
        $fileName = md5(time().$pathName.rand(1111,9999));
        $object = date('Y-m-d',time()).'/'.$fileName.'png';
        try {
            $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
            $url = $ossClient->uploadFile($bucket,$object,$pathName)['info']['url'];
            $stdData = [
                'code' => 0,
                'msg' => '操作成功',
                'data' => ['url'=>$url]
            ];
            return $stdData;
        } catch (OssException $e) {
            print $e->getMessage();
        }
    }
 |