gpt4 book ai didi

javascript - 有没有办法检索从 iframe 发送的 ajax 响应?

转载 作者:行者123 更新时间:2023-12-03 21:46:02 26 4
gpt4 key购买 nike

我想知道是否有任何方法可以检索从 iframe 发送的 ajax 请求的响应。

iframe 执行以下操作:

  • iframe 中的脚本发送 ajax 请求
  • iframe 得到响应,并更新 iframe 中的内容

  • 我想做的是在 iframe 之外拦截该请求,并使用该信息更新页面。

    如果您进入 chrome 的开发工具,然后转到网络选项卡,您可以看到 iframe 发出的请求/响应。如果每次页面上有响应时都会触发一个窗口事件或类似的东西,那就太好了。

    注意:iframe 是不在同一个域中的页面。

    最佳答案

    如果子 iframe 与父 iframe 位于不同的域中,则您实际上无法执行任何可以跨浏览器工作的操作。假设您可以控制两个框架上的客户端脚本,请参阅下面的 jasonjifly 的回答,了解适用于某些浏览器的技术。

    如果 parent 和 child 在同一个域上,那么你可以实现你正在寻找的东西。

    例如,假设您使用的是 jquery,您可以在 iframe 中包含以下代码:

    $.ajax(function() {
    .....
    complete: function() {
    window.parent.onAjaxComplete('Hi there');
    }
    });

    连同父框架中的此代码:
    function onAjaxComplete(msg)
    {
    alert(msg);
    }

    要在跨域场景中获得类似的结果,您可以让父框架轮询服务器。当服务器收到来自子 iframe 的 ajax 请求时,它可以通过轮询服务提醒父页面。显然,这仅适用于您可以控制子 iframe 调用的服务。

    关于javascript - 有没有办法检索从 iframe 发送的 ajax 响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17606690/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com