在网页上提供REST-API数据而不暴露API端点

我是MEAN的初学者。

当调用未经身份validation的REST API(不需要用户login)时,API端点将暴露在JS文件中。 通过论坛看来,没有办法阻止滥用者直接使用API​​端点,甚至无法使用这些端点创build自己的Web /应用程序。 所以我的问题是,有没有办法避免暴露JS文件中的端点?

在类似的说明中,是否有任何方法,不要在前端使用REST调用,仍然能够在MEAN堆栈中提供这些dynamic内容/ API输出数据? 我使用EJS。

没有真正安全的方法来做到这一点。 你可以在服务器上渲染页面,所以客户端只能看到HTML(和一些有限的JS)。

首先,如果你没有启用CORS,那么你的AJAX调用受到浏览器的保护,也就是说,只有来自域A的页面可以对域A进行AJAX调用。

像Google Maps这样的公共API提供商通过让您使用连接到Google帐户的API密钥来保护自己。 JS中仍然可以看到这个键,但是如果被滥用的话,可以很容易地禁用。

通过混淆还有伪安全性,即使攻击者难以提取使用encryptionAPI交互的公共秘密。

http://javascript2img.com/这样的工具远非完美,但是攻击者花费了大量的时间来弄清楚你的代码是干什么的。 通常这就够了。

还有各种方法可以根据需要下载JS代码,然后检查运行的DOM是否属于您的代码。