我的网页上有一个iframe,位于不同的域上。我知道出于安全原因,在浏览器中无法使用javascript访问该iframe的内容,但我可以检测到用户在iframe的页面之间导航时发生的任何POST或GET吗?
答案 0 :(得分:0)
如果您拥有这两个应用程序,则可以教他们与postMessage
API进行通信:https://developer.mozilla.org/en-US/docs/Web/API/Window.postMessage
如果没有太多工作,你可以在iframe方面创建一个简单的方法,告诉它当前的window.location
是什么。
答案 1 :(得分:0)
如果你控制服务器,你可以通过一些服务器端代码将它们打印到parent.yourMethodToHandle()来传回一些变量。例如:
在子页面上使用php(在iframe中):
$post_var = $_POST['var'];
echo "<script type='text/javascript'>$(function(){parent.yourMethodToHandle('$post_var')}); </script>";
和您父网页上的JS(包含iframe):
<script type='text/javascript'>
function yourMethodToHandle(post_var){//Do things}
</script>
答案 2 :(得分:0)
如果它是同一个域,服务工作者可能会帮助您捕获正在进行的请求,拦截并返回您想要的任何内容。