通过Http Get向IE中的iframe传递querystring参数时出现问题

通过Http Get向IE中的iframe传递querystring参数时出现问题,iframe,query-string,cross-browser,cross-domain,http-get,Iframe,Query String,Cross Browser,Cross Domain,Http Get,这是我之前问题的后续内容:。这个问题一直没有解决 这是它的核心: 我正在尝试从中执行HTTP GET 我的网站到另一个网站是 通过iframe引入 在Firefox上,您可以在源代码中看到 iframe中是否存在正确的url src和它是正确的 参数——它是有效的 在IE上,你可以在源代码中看到 正确的url位于iframe src中 以及它的正确参数-- 但它不起作用 这有什么关系吗 不允许传递参数 通过查询字符串中的iframe 我已经尝试刷新了iframe 我试着刷新我的页面& IE中的

这是我之前问题的后续内容:。这个问题一直没有解决


这是它的核心:

我正在尝试从中执行HTTP GET 我的网站到另一个网站是 通过iframe引入

在Firefox上,您可以在源代码中看到 iframe中是否存在正确的url src和它是正确的 参数——它是有效的

在IE上,你可以在源代码中看到 正确的url位于iframe src中 以及它的正确参数-- 但它不起作用

这有什么关系吗 不允许传递参数 通过查询字符串中的iframe

我已经尝试刷新了iframe 我试着刷新我的页面& IE中的iframe,我已经尝试过了 复制url并将其重新粘贴到 iframe src(强制刷新) 好像我刚把它输入了 该iframe窗口的地址栏)。 还是不走运

有人知道为什么会这样,或者 你有什么建议可以试试看吗 围绕着这个

至于代码,它所做的只是创建 页面上后端代码中的src 加载并设置src属性 从后端

//设置src的后端代码
mainIframe.Attributes[“src”]=srcWeJustCreated;
//前端iframe代码

我已经为您建立了一个临时帐户,您可以登录并完全了解我的意思。这样,您就可以使用firebug或任何其他调试技术来找出为什么这不起作用,而不是让我来解释发生了什么

编辑:更改了帐户凭据。请改用这个
用户名:matt
密码:globalbuying

请跟随进入登录页面。如果您使用上述凭据登录,它将带您进入后端主页面。单击左侧显示“休假”的图像,这将为您带来一个带有iframe的页面,并从那里执行httpget

如果你需要更多关于后台代码的细节,请告诉我,我会发布它们

谢谢,

Matt

您提供的示例页面在IE8中为我工作。iframe没有chrome中的那么高,但它确实有正确的页面


另一方面,请注意,通过查询字符串传递登录凭据是非常不安全的,并且容易受到各种攻击。

iframe的URL中的符号似乎是HTML编码的(
&;
)。 我想这可能会导致IE在识别param名字时窒息。如果在URL中使用普通的符号,问题是否仍然存在


如果SRC属性上的编码是隐式发生的,您可能需要考虑使用<代码>文字< /代码>控件进行测试,并将其<代码>文本<代码>属性设置为整个iFrAME标签,以避免任何不必要的编码。我发现IE可以发出请求,但无法在

iframe
中设置任何cookie

我还注意到,如果我单独打开带边框的页面,它确实可以工作。更重要的是,在再次登录之后,iframed版本也能正常工作。这是因为它已经有了一个会话cookie,
iframe
不再需要设置它

事实证明,这是一个已知的安全限制:IE在iFrame中阻止Cookie。但这可以通过使用

这里有几个链接可以帮助您解决这个问题。从StackOverflow的另一个(已回答)问题开始:


只是想抛开我在IE和iFrame方面的经验。您是否尝试过将internet explorer安全设置刷新/还原为默认设置?IE是否表示您在查看页面时处于混合分区?我正在努力确保您的IFRAME不会被视为IE中的受限区域。您可以尝试将IFRAME添加到您的受信任区域,看看它是否有效吗?我知道Mike在您之前的赏金中提出了类似的建议,但我在IE中的查询字符串参数方面没有任何问题。我唯一遇到问题的是设置security=restricted attrb。在iframe的右上角,它是说Sign in还是Sign Out?感谢大家对安全性的关注——我们的网站和供应商的网站在我们发布时都将使用SSL,这样可以消除大部分安全问题。啊,我现在明白了。你说得对,上面写着登录。我不知道为什么。
//Backend code to set src
mainIframe.Attributes["src"] = srcWeJustCreated;

//Front end iframe code
<iframe id="mainIframe" runat="server" />