如何阻止来自iframe的请求

时间:2019-01-18 14:36:04

标签: javascript html iframe server

F.e。我有这样的代码

index.html

<html>
<head>
    <meta charset="utf-8">
</head>
<body>
    <iframe src="iframe.html"></iframe>
</body>
</html>

iframe.html

<html>
    <head>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.js"></script>
    </head>
    <body>
        <script>
            $.get("http://badsite.com");
            $.get("http://goodsite.com");
        </script>
    </body>
</html>

如您所见,iframe发出了两个请求,如何阻止对http://badsite.com的请求 我需要使用js,php,还是应该配置服务器或更改.htaccess文件?

2 个答案:

答案 0 :(得分:0)

使用CSP设置connect-src

您不能专门阻止恶意站点,但只能允许商品站点(或包含商品站点的站点列表)。

您对iframe.html的HTTP响应标头应包括:

Content-Security-Policy: connect-src http://goodsite.com http://different-goodsite.com

您还可以使用meta元素。

<meta http-equiv="Content-Security-Policy" content="connect-src http://goodsite.com http://different-goodsite.com">

答案 1 :(得分:0)

HTML5在<!--@thymesVar id="adminViewDTO" type="test.view.AdminViewDTO"--> <th:block th:each="someObject : ${adminViewDTO.someObjects}"> <!--When using someObject in expression here, it will be recognized--> </th:block> 上引入了the sandbox attribute,从而禁用了JavaScript的加载和执行。