Javascript 如何处理对公共url的无限点击

Javascript 如何处理对公共url的无限点击,javascript,angularjs,security,asp.net-web-api,Javascript,Angularjs,Security,Asp.net Web Api,我正在使用WebApi和AngularJS开发一个Web应用程序。我的应用程序是公共分类网站,其中有许多URL是公共的。我的问题:如果有人写了一个非常简单的无限循环,然后开始攻击我的服务器,比如: <script type="text/javascript"> $(function () { while (true) { $.get("https://MyPublicURL", function (data) {

我正在使用WebApi和AngularJS开发一个Web应用程序。我的应用程序是公共分类网站,其中有许多URL是公共的。我的问题:如果有人写了一个非常简单的无限循环,然后开始攻击我的服务器,比如:

<script type="text/javascript">

    $(function () {

        while (true) {
            $.get("https://MyPublicURL", function (data) {
            });
        };
    });

</script>

这将使我昂贵的服务器无缘无故地提供不必要的请求。避免这种情况的最佳做法是什么

您可以使用一些服务来缓解DoS攻击,其中最广为人知、最容易使用的服务之一是CloudFlare:

基本层是免费的,可以提供一些保护,所以您可以尝试一下,看看它是否适合您


您可以自己做一些事情来缓解简单的攻击,例如示例中的攻击,但更复杂的攻击DDoS等需要从外部处理。

3Scale还提供API使用限制功能。
请参阅:

这称为DOS拒绝服务攻击;当有人发出如此多的请求而导致您的Web服务器挂起时。这更像是一个服务器设置/It问题。你可能会通过谷歌拒绝服务攻击。从根本上说,你无法阻止DOS攻击。您可以通过诸如速率限制之类的方式在服务器上进行缓解:或者,但这实际上意味着您可以以较低的计算复杂度回答错误的请求,而不是阻止它们。对于更严重的DOS/DDOS攻击,您的服务提供商可能需要参与其中,可能是通过null路由恶棍。谢谢,我搜索了这么多天的答案,只是不知道它被称为拒绝服务。谢谢我现在就从这里开始搜索。