plupload 如何控制最小宽度和文件类型及跨域

简介: 直接上代码 plupload.addFileFilter('min_width', function (maxwidth, file, cb) { var self = this, img = new o.

直接上代码

plupload.addFileFilter('min_width', function (maxwidth, file, cb) {
        var self = this, img = new o.Image(); 
        function finalize(result) {
            // cleanup
            img.destroy();
            img = null;

            // if rule has been violated in one way or another, trigger an error
            if (!result) {
                self.trigger('Error', {
                    code: plupload.IMAGE_DIMENSIONS_ERROR,
                    message: "图片宽度不能小于" + maxwidth + "px",
                    file: file
                });
            }
            cb(result);
        }
        img.onload = function () {
            // check if resolution cap is not exceeded
            finalize(img.width >= maxwidth);
        };
        img.onerror = function () {
            finalize(false);
        };
        img.load(file.getSource());
    });
    plupload.addFileFilter('filetype', function (filetype, file, cb) {
        var self = this, img = new o.Image();
        function finalize(result) {
            // cleanup
            img.destroy();
            img = null;

            // if rule has been violated in one way or another, trigger an error
            if (!result) {
                self.trigger('Error', {
                    code: plupload.IMAGE_DIMENSIONS_ERROR,
                    message: "您上传的图片格式是" + file.type + ",只能上传jpg图片",
                    file: file
                });
            }
            cb(result);
        }
        img.onload = function () {
            // check if resolution cap is not exceeded
            var type = file.type; 
            type = type.replace("image/", ""); 
            finalize(filetype.indexOf(type) > 0);  
        };
        img.onerror = function () {
            finalize(false);
        };
        img.load(file.getSource()); 
    });


    var uploader = new plupload.Uploader({//创建实例的构造方法
        browse_button: 'fileinput-button',
        runtimes: 'html5,flash,silverlight,html4', //上传插件初始化选用那种方式的优先级顺序 
        url: "/common/ImageUp", //远程上传地址
        max_file_size: '20mb',
        chunk_size: '500kb', 
        filters:  
           { title: "Image files", filetype: "jpg,jpeg", min_width: 600 }
        ,
        flash_swf_url: '/Scripts/plupload-2.1.9/Moxie.swf', 
    });

    uploader.init();

 

参考文章:

http://stackoverflow.com/questions/14091505/control-image-width-and-height-when-upload-image

 

2.跨域

在iis7下web.config配置,实际配置时,指定具体的域名,防止被黑客入侵

<?xml version="1.0" encoding="utf-8"?>
<configuration>
 <system.webServer>
   <httpProtocol>
     <customHeaders>
       <add name="Access-Control-Allow-Origin" value="*" />
     </customHeaders>
   </httpProtocol>
 </system.webServer>
</configuration>

 

3.php怎么跨域

在文件头部加上  header( 'Access-Control-Allow-Origin:http://abc.com' );

如果在iis下不要添加,如2配置即可

跨域可能用的路径

//获取当前的域名:  
echo $_SERVER['SERVER_NAME'];  
//获取来源网址,即点击来到本页的上页网址  
echo $_SERVER["HTTP_REFERER"];  
$_SERVER['REQUEST_URI'];//获取当前域名的后缀  
$_SERVER['HTTP_HOST'];//获取当前域名  
dirname(__FILE__);//获取当前文件的物理路径  
dirname(__FILE__)."/../";//获取当前文件的上一级物理路径  

 

相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
相关文章
|
6月前
|
Web App开发 移动开发 JavaScript
【前端用法】HTML5 Video标签如何屏蔽右键视频另存为的js代码以及如何禁用浏览器控件,Video 禁止鼠标右键下载
【前端用法】HTML5 Video标签如何屏蔽右键视频另存为的js代码以及如何禁用浏览器控件,Video 禁止鼠标右键下载
168 0
|
4月前
|
Java 应用服务中间件 Android开发
UEditor自定义图片/文件上传路径与回显
UEditor自定义图片/文件上传路径与回显
73 0
|
5月前
|
JavaScript
原生js实现文件下载并设置请求头header
原生js实现文件下载并设置请求头header
|
存储 前端开发 Java
Element el-upload 文件上传/图片上传/拖拽上传/附带参数/附带请求头部详解
文目录 1. 前言 2. 基本用法 2.1 前端部分 2.2 后端部分 2.3 获取后端返回信息 3. 外观功能介绍 3.1 拖拽上传 3.2 显示图片 3.3 设置文件列表样式 3.4 显示提示信息 4. 事件功能介绍 4.1 限制上传文件数量 4.2 限制上传文件类型和大小 4.3 移除文件处理 4.4 手动上传 5. 附带参数 6. 附带请求头部 7. 小结
3918 0
html:设置页面不自动请求favicon.ico图标
html:设置页面不自动请求favicon.ico图标
116 0
如何通过form表单控制上传文件的大小?
如何通过form表单控制上传文件的大小?
1159 0
|
前端开发 JavaScript 内存技术
【前端】页面中调用swf 时allowScriptAccess 参数
使用 allowScriptAccess 使 Flash 应用程序可与其所在的 HTML 页通信。此参数是必需的,因为 fscommand() 和 getURL() 操作可能导致 JavaScript 使用 HTML 页的权限,而该权限可能与 Flash 应用程序的权限不同。这与跨域安全性有着重要关系。
133 0
|
移动开发 Linux HTML5
Linux下将swf文件用浏览器读取打开(html、html5嵌入swf格式文件)
Linux下将swf文件用浏览器读取打开(html、html5嵌入swf格式文件)
|
Web App开发 JavaScript 前端开发
JavaScript 技术篇-navigator.permissions读取chrome剪切板权限获取不生效原因:只有在https协议下使用有效。手动设置chrome页面剪切板读取权限方法
JavaScript 技术篇-navigator.permissions读取chrome剪切板权限获取不生效原因:只有在https协议下使用有效。手动设置chrome页面剪切板读取权限方法
1160 0
JavaScript 技术篇-navigator.permissions读取chrome剪切板权限获取不生效原因:只有在https协议下使用有效。手动设置chrome页面剪切板读取权限方法
|
前端开发 CDN
html2canvas图片生成file格式传送到后台服务器
html2canvas图片生成file格式传送到后台服务器