WEB开发网
开发学院图形图像Flash My Silverlight系列(4)——恼人的Silverlight文... 阅读

My Silverlight系列(4)——恼人的Silverlight文件操作

 2009-04-25 12:04:55 来源:WEB开发网   
核心提示: 在我允许下载之后,页面刷新,My Silverlight系列(4)——恼人的Silverlight文件操作(4),如果我再点击silverlight的button,文件下载的提示正常显示,这样那样的限制实在太讨厌了,silverlight既然可以通过js来做一些事,相应的,我把aspx中b

在我允许下载之后,页面刷新,如果我再点击silverlight的button,文件下载的提示正常显示。相应的,我把aspx中button的响应代码也做修改:

        function Button_onclick() {
            window.open("http://files.cnblogs.com/wodehuajianrui/BubblyStyleProject.zip", "_self");
        }

运行结果如下:

My Silverlight系列(4)——恼人的Silverlight文件操作

并没有被浏览器拦截,而是正常提示下载。由此可见,sliverlight出于安全因素的考虑,极大地限制了它的行为。同时,这是我调用js的结果,如果我调用dom,让aspx页面向我的浏览器post一个文件,也会被拦截……本来我们用sliverlight是为了提高用户体验,但是这样页面频繁的刷新,而且还总跳出提示,让人非常的不爽。。。

我想投机取巧的方法也不是没有,微软在他的MSN space中的SkyDrive中,做了一些手脚,他的是一个aspx页,但是如果是通过Server主动将文件post过来的话,一定会被浏览器拦截的,所以微软的工程师想了一个办法,他们巧妙的应用CSS,将一个链接打扮得像一个button,连on:focus伪类都用上了,然后动态的利用js为链接的href赋值,从而当用户点击那个长得像button的链接的时候,就会直接下载文件(因为这是用户自己的get请求,所以浏览器不会拦截)。所以在silverlight上我们完全也可以使用类似的办法欺骗用户。。。。

说到这,我希望微软在开发下一个版本的silverlight时,考虑将这些限制解除,这样那样的限制实在太讨厌了,silverlight既然可以通过js来做一些事,我们何不让它就在托管的.net代码中做那些事呢?衷心希望能在方便和安全中间,找到一个万全之策!

上一页  1 2 3 4 5  下一页

Tags:My Silverlight 系列

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接