plupload 如何控制最小宽度和文件类型及跨域
直接上代码
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__)."/../";//获取当前文件的上一级物理路径
plupload 如何控制最小宽度和文件类型及跨域的更多相关文章
- nginx处理vue打包文件后的跨域问题
起因 在vue文件打包后,项目脱离了vue配置的反向代理配置,还是会报跨域的错误,或者直接打不开本地文件, 但是此刻我们想打开打包后的文件,测试一下文件有没有错误,因为经常会存在开发阶段没有问题,打包 ...
- 阿里云OSS上传文件本地调试跨域问题解决
问题描述: 最近后台说为了提高上传效率,要前端直接上传文件到阿里云,而不经过后台.因为在阿里云服务器设置的允许源(region)为某个固定的域名下的源(例如*.cheche.com),直接在本地访问会 ...
- 文件上传跨域解决方案-jQuery-File-Upload
GIT 下载地址 https://github.com/blueimp/jQuery-File-Upload 亲测HTTPS HTTP跨域无压力 不用自带的DEMO 用下面的DEMO <!DOC ...
- h5属性直接控制上传文件类型
和公司前端交互的时候发现我在选择上传文件的时候只能选择图片,其他类型,text,doc等等等等全部无法选择 仔细查看了下代码,发现归功于H5新增(??没查到资料,不确定是不是H5的)的input属性 ...
- ajax实现返回数据是html类型的跨域问题
$.ajax({ url : _url, type : 'GET', dataType : 'html', xh ...
- Vue 之 element-ui upload组件的文件类型
在使用element-ui的upload上传组件的时候,有时候会遇到 控制上传文件类型 的需求,只需要配置accept属性为允许的类型即可,比如: <el-upload class=" ...
- Extjs的form跨域提交文件时,无法获取返回结果
form文件表单跨域提交时,无法获取远程服务器的返回结果,form提交代码如下: form.submit({ url:'http://{remoteUrl}/hgisserver/wrds/file' ...
- 跨域策略文件crossdomain.xml文件
使用crossdomain.xml让Flash可以跨域传输数据 一.crossdomain.xml文件的作用 跨域,顾名思义就是需要的资源不在自己的域服务器上,需要访问其他域服务器.跨域策略文件 ...
- 在HTML5的 input:file 上传文件类型控制 遇到的问题
1.input:file 属性的介绍 先瞅代码吧 <form> <input type="file" name="pic" accept=& ...
随机推荐
- hibernate理解
SSH框架: Struts框架, 基于mvc模式的应用层框架技术! Hibernate,基于持久层的框架(数据访问层使用)! Spring,创建对象处理对象的依赖关系以及框架整合! Dao代码,如何编 ...
- 让网站动起来!12款优秀的 jQuery 动画插件推荐
如今,大多数设计师和开发人员被要客户要求开发动态的网站.创造视觉震撼和醒目的动态网站是艰巨的任务,因为它需要大量的努力和创造力.在网络上有大量的工具和插件可用于创建网站动画.许多开发人员正在使用 HT ...
- web移动端fixed布局和input等表单的爱恨情仇 - 终极BUG,完美解决
[问题]移动端开发,ios下当fixed属性和输入框input(这里不限于input,只要可以调用移动端输入法的都包括,如:textarea.HTML5中contenteditable等),同时存在的 ...
- Unable to extract 64-bitimage. Run Process Explorer from a writeable directory
Unable to extract 64-bitimage. Run Process Explorer from a writeable directory When we run Process E ...
- 在VM虚拟机上安装Microsoft Dynamics CRM 2016 步骤图解及安装注意事项
安装Dynamics CRM 2016环境配置要求: 系统版本:Windows Server 2012 R2(必须) SQL 版本: SQLServer2014SP1-FullSlipstream-x ...
- sublime text 乱码生成.dump问题的解决方法
title: sublime text 乱码生成.dump问题的解决方法 tags: sublime text,sublime text 3,.dump,乱码 grammar_cjkRuby: tru ...
- 敏捷遇上UML-需求分析及软件设计最佳实践(郑州站 2014-6-7)
邀请函: 尊敬的阁下:我们将在郑州为您奉献高端知识大餐,当敏捷遇上UML,会发生怎样的化学作用呢?首席专家张老师将会为您分享需求分析及软件设计方面的最佳实践,帮助您掌握敏捷.UML及两者相结合的实 ...
- rails中的session
学rails toturial的时候,第八章一直觉得有点没吃透,后来看了两篇rails关于session和cookies源码分析的文章,cookie原理与实现(rails篇) 和session原理与实 ...
- [转]oracle 实施方法论学习心得
本周由部门新入职的同事为我们分享oracle实施方法论,本次重点围绕项目启动会来做介绍,并着重介绍了oracle与我们不一样的地方.收获颇丰,简单总结几个值得学习借鉴的要点: 1. 细节 ...
- 常用的HTTP状态代码
常用的HTTP状态代码如下: 400 无法解析此请求. 401.1 未经授权:访问由于凭据无效被拒绝. 401.2 未经授权: 访问由于服务器配置倾向使用替代身份验证方法而被拒绝. 401.3 未经授 ...