• 【插件】thinkphp5+百度编辑器自定义上传


    1 官方下载sdk

    2 在引入编辑器页面。写入js

                // 百度编辑器
                UE.Editor.prototype._bkGetActionUrl = UE.Editor.prototype.getActionUrl;
                UE.Editor.prototype.getActionUrl = function (action) {
                    if (action == 'uploadimage' || action == 'uploadscrawl') {
                        return "/alioss/file_upload_ueditor";//这就是自定义的上传地址
                    } else if (action == 'uploadvideo') {
                        return '';
                    } else {
                        return this._bkGetActionUrl.call(this, action);
                    }
                }
    
                var ue = UE.getEditor('article_content', {
                    zIndex: 999,
                    initialFrameWidth: "100%", //初化宽度
                    initialFrameHeight: 300, //初化高度
                    focus: false, //初始化时,是否让编辑器获得焦点true或false
                    maximumWords: 99999, removeFormatAttributes: 'class,style,lang,width,height,align,hspace,valign',//允许的最大字符数 'fullscreen',
                    pasteplain: false, //是否默认为纯文本粘贴。false为不使用纯文本粘贴,true为使用纯文本粘贴
                    autoHeightEnabled: true
                });

    其中 

    /alioss/file_upload_ueditor
    

     就是我们自定义的上传路径,原理就是拦截百度原来的上传请求,从而到达不修改百度sdk的情况下。实现自定义接口,

    返回格式要按照如下:

    /**
         * 百度编辑器上传图片
         */
        public function file_upload_ueditor(){
            
            $file = request()->file();
    
            if (!empty($file) && isset($file['upfile'])) {
    
                $alioss_model = model("AliossModel");
    
                $upfile = $file['upfile'];
                $file_data = $upfile->getInfo();
                $path = 'thumb';
                $file_mes =  $alioss_model->file_upload($file_data,$path);
    
                $img_host_url = Config::get("config_set.img_host_url");
    
                $result = [
                    'state' => 'SUCCESS',
                    'url' => $img_host_url.$file_mes['file_path'],
                    'title' => '图片',
                    'original' => $file_mes['file_path']
                ];
    
                return json($result);
            
            }else{
                return json([
                    'state' => '文件上传失败'
                ]);
            }
    
            
        }

     

  • 相关阅读:
    《Eric带您走近Office 2010》系列专题来啦!
    以人为本 体验至上(二)
    以人为本 体验至上(一)
    操作Static对象的多线程问题
    TroubleShoot:SilverLight中Wcf调用时出现Not Found等错误
    delegate与event的关系说明
    SharePoint对象模型性能考量
    SharePoint自带Silverlight WebPart中文输入问题处理
    关于Wcf事件多次执行的问题
    SharePoint中调试SilverLight程序
  • 原文地址:https://www.cnblogs.com/richerdyoung/p/11728337.html
Copyright © 2020-2023  润新知