2011-12-12 61 views
2

我正在考虑为移动用户做一些在线文件操作,这个想法是用户提供了一个URL到文件,然后文件内容由JS修改,然后可以下载。但是我一直无法弄清楚如何在使用JS的独立域上获取文件。如何使用JS加载其他域的文件内容?

这可能吗?如果有的话,任何提示或例子将不胜感激。

只是想补充一点,我想要做的就是让它可用,而无需托管它。我想到的东西就像一个文件,他们可以在某个地方托管,然后所有的带宽都是他们自己的...以及他们从哪里获取文件的地方。

+0

[同源策略](https://developer.mozilla.org/zh/Same_origin_policy_for_JavaScript)。 –

+0

您的目标浏览器支持是什么,您是否可以访问其他域的代码? – alex

+0

主要目标是iOS下的Safari,不支持,不能访问其他域。我将得到的文件总是某种二进制文件,从来不是一个网页(但不一定是任何特定的MIME类型)。 – jmoreno

回答

2

在另一个域上加载文件内容的唯一方法是在<script>标记内。这就是JSONP的工作原理。研究将目标文件转换为这种格式。

另一种方法是使用本地代理。创建一个加载和返回文件内容的Web服务方法,然后使用您最喜欢的JavaScript框架在本地调用该方法。

+0

提示:谷歌跨域AJAX – jli

+0

@jli - 看起来不像这个项目支持了http://code.google.com/p/cross-domain-ajax/ –