【问题标题】:Read Form Fields of IFRAME - Cross Domain读取 IFRAME 的表单字段 - 跨域
【发布时间】:2012-12-28 05:08:35
【问题描述】:

我的 html 页面如下所示。我需要做的是,如果有人在 IFRAME 之外的申请者信息 1$FirstName 字段中键入内容 - 我对在 Iframe 中打开的 url 没有任何控制权。这可能使用 Json 或 Javascript 吗?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
First Name : 
<input name="ApplicantInfo1$FirstName" type="text" maxlength="30" id="ApplicantInfo1_FirstName" title="First Name" class="nonnumeric" minlength="2" style="width:200px;" /> 
<br />
<iframe id="progressive" src="https://www.progressivelp.com/onlineapplication/onlineapplication.aspx?sid=Metro2674957490&kid=1" width="940" height="1200" scrolling="no" style="border:none;"></iframe>
</body>
</html>

【问题讨论】:

标签: javascript json iframe


【解决方案1】:

这是不可能的,因为浏览器执行的来源策略相同。

如果没有该政策,任何人都可以编写一个网页,在 iframe 中打开您的网上银行,并从该 HTML 中读取任何想要的内容。我认为我们可以同意这将是一个巨大的安全风险,因此通常相同的原始策略 (SOP) 是一件好事。

解决此限制的常用方法是在您的服务器上引入代理页面。然后,此代理页面可以代表您检索远程网页并将其内容返回给浏览器。这样可以确保两个 HTML 来自同一个域。

【讨论】:

    猜你喜欢
    • 2012-10-22
    • 1970-01-01
    • 1970-01-01
    • 2015-04-26
    • 1970-01-01
    • 2010-11-14
    • 2014-06-25
    • 2011-11-26
    • 2014-03-30
    相关资源
    最近更新 更多