浏览器不能访问本地资源的限制

来源:互联网 发布:中国网络直销公司排名 编辑:程序博客网 时间:2024/05/18 00:03
做一个截图上传的功能,想在上传前在网页中显示预览,发现做不到。
原因:html,js不能直接访问本地资源,否则存在严重的安全隐患。
类似的还有,js不能设置input:file中的值


今天了解到,这个叫做“客户端编程语言”的同源策略。
同源策略规定跨域之间的脚本是隔离的,一个域的脚本不能访问和操作另外一个域的绝大部分属性和方法。
相同域要具有相同的协议(如http), 相同的端口(如80),相同的host

比如,服务器的资源是通过是http访问的,而本地的HTML文件在浏览器中是通过file协议打开的,他们之间不能跨域访问。

 

不过可以通过flash来提供此功能。

另外IE的滤镜也可以完成此功能,如下:

filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod='scale',src="C:\Documents and Settings\chrislvchen\My Documents\My Pictures\myLogo.jpg"); WIDTH: 127px; HEIGHT: 200px;

原创粉丝点击