如何使网站的JavaScript文件不可访问或隐藏其上的某些信息

问题描述 投票:0回答:1

我目前正在使用GitHub页面托管我的网站,并且我正在制作一个简单的Web应用程序,需要API调用。 API调用是具有某些参数的Web URL,强制参数之一是从服务发出的个人API密钥,他们严格警告不要与其他人共享该密钥,这等同于共享您的密码。此服务没有公共API密钥,只有帐户绑定的密钥。

在我的JavaScript文件中,一行内容如下:

var api= "https://osu.ppy.sh/api/get_beatmaps?k=[MY API KEY HERE]"然后在getJSON调用中使用此字符串的位置。

?k=后面是我不想共享的帐户绑定API,因为它等同于提供密码。我意识到,任何用户都可以继续执行myname.github.io/js/script.js,他们可以查看JavaScript,因此可以看到我的API密钥。有没有一种方法可以使该文件无法访问,或者可以使任何人都看不到我的API密钥。

javascript api security url web-applications
1个回答
0
投票

除非您能隔离它,如在您所控制的服务器上运行该代码并可以锁定该代码,否则答案为否。

您还可以像在Amazon Lambda函数或等效函数中一样,执行此“无服务器”操作。

请记住,客户端代码在客户端运行,因此,如果他们有权访问您的密钥,那么他们就可以访问您的密钥。解决此问题的唯一方法是中介或代理请求。

© www.soinside.com 2019 - 2024. All rights reserved.