上传图片Security Error

 
今天上传图片的时候,突然碰到上面所说的错误,之前还好,( ⊙o⊙?)不懂
 
http://www.111cn.net/wy/js-ajax/58962.htm  -SWFUpload上传报错解决
关于跨域问题:

crossdomain.xml

<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">  <cross-domain-policy>
    <allow-access-from domain="这里写上你的域名www.111cn.net" />
</cross-domain-policy>
如果允许所有的域提交就这样写:
<allow-access-from domain="*" />
http://www.xuebuyuan.com/848255.html -Uploadify跨域访问解决方案
内容:
最近项目中要用文件上传控件,我就想到了Uploadify,但是Uploadify内部是通过flash来实现文件上传的,所以当跨域上传文件时就会报security error,就这需要配置跨域策略文件crossdomain.xml文件。基于flash安全沙箱策略来讲,同一个域属于同一个沙箱,只有在同一个沙箱中才能互相访问,如果要访问另一个沙箱,就需要对发起请求的沙箱定义为信任,而这种信任策略就需要配置在crossdomain.xml文件中。

crossdomain.xml文件中的内容如下所示:

 

<?xml version="1.0" encoding="UTF-8"?><br />
<!DOCTYPE cross-domain-policy SYSTEM<br />
    "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd" ><br />
<cross-domain-policy><br />
    <site-control permitted-cross-domain-policies="all" /><br />
    <allow-access-from domain="*" /><br />
    <allow-http-request-headers-from domain="*" headers="*"/><br />
</cross-domain-policy><br />

以上代码表示接受来自任何域的数据请求访问,通过以上的配置就可以实现跨域的文件上传了,但是这种策略也是不安全的,因为这样有可能接收来自非法域的数据请求访问,所以我们还需要自定义请求访问域,代码如下所示:

 

<?xml version="1.0" encoding="UTF-8"?><br />
<!DOCTYPE cross-domain-policy SYSTEM<br />
    "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd" ><br />
<cross-domain-policy><br />
    <allow-access-from domain="*.baidu.com" /><br />
</cross-domain-policy><br />

 

 

 

通过以上配置就可实现较安全的Uploadify跨域访问,本人测试时用的是tomcat,crossdomain.xml文件放在项目的webroot目录下。

 

 

上面两种跨域代码实际上一样,要详细可以直接到网页中看。

不过,我自己这边的错误提示的理由,还是糊里糊涂。

用的是jquery.uploadify.v3.2.js,好像有点老了,后来怎么好的,我也不清楚,只是重新发布了版本,上传就没有再报错了<( ̄3 ̄)>
 
posted @ 2016-04-02 11:08  Danlis  阅读(2297)  评论(5编辑  收藏  举报