【发布时间】:2011-11-21 16:39:45
【问题描述】:
我听说要访问 Gmail 电子邮件中的文本即使不是不可能也非常困难(iframe)。
在某些领域 JavaScript 无法做到吗?
【问题讨论】:
标签: javascript firefox dom google-chrome firefox-addon
我听说要访问 Gmail 电子邮件中的文本即使不是不可能也非常困难(iframe)。
在某些领域 JavaScript 无法做到吗?
【问题讨论】:
标签: javascript firefox dom google-chrome firefox-addon
iframe 不会阻止您访问内容。 JavaScript 在操作 DOM 方面确实没有任何限制……但是,它不能访问您计算机上的内容,也不能用于上传文件等。它也无法读取闪存文件中的内容。反正除了 JS 你真的别无选择。你期待什么样的路障?
【讨论】:
由于您选择使用firefox-addon 标签:不,通过插件访问 Gmail 文本是没有问题的。但是,除非该网站托管在 mail.google.com 上,否则无法从常规网站执行相同操作。 Reason 是一种名为same-origin policy 的安全机制。网站通常受同源政策的限制,附加组件则不受限制。
【讨论】:
不同的浏览器对 JavaScript 施加不同的限制,并为 JavaScript 提供不同的 API 以授予其访问不同形式的数据的权限。直到最近,JavaScript 还无法访问本地文件。但是,现在某些浏览器中有 API 可以做到这一点。
有一个概念称为“同源”策略,用于确保在一个域或协议的上下文中运行的 JavaScript 不能访问来自另一个域或协议的数据。但是,浏览器插件或扩展通常可以免除这些限制。此外,一些浏览器提供专门用于不同来源之间通信的 API;但是,这些 API 通常要求在双方的合作和许可下完成。
【讨论】:
通过扩展 JS,您可以访问 Gmail 的任何部分。我编写了一个浏览器扩展程序,允许我将 Gmail 电子邮件转发给 Facebook 联系人。它也出现在 Facebook 中,并允许我向 Gmail 联系人发送 Facebook 消息。这样我就不必担心将联系人从谷歌添加到 Facebook,反之亦然。
那个扩展很简单。一旦你通过了 iframe 部分,它就是蛋糕。祝你好运!
【讨论】: