使用JavaScript时如何保护API密钥?

所以,我正在为自己开发一个小应用程序,也可能是在Git上开源项目。我正在使用Envato Marketplace中的一个API,众所周知,有些操作不需要任何键,但同时有一些需要。

我首先在PHP中为Envato API制作了一个很好的API包装,但是我决定用JavaScript进行一些实验,所以我用JavaScript开发相同的包装器。到目前为止,我没有公共操作的问题,但我现在必须使用API​​密钥。

我的问题是如果有一种方法来保护JavaScript中的API Key。我不能把它放在纯文本中,因为它可以被看到代码的其他人使用。那么API会保持秘密吗?也许用XHR从JSON文本文件抓住它?

简答:否

你做什么来模糊密钥,你仍然需要发送它使它可以在客户端上以某种方式可用,因此可以使用fx解压缩它。萤火虫。

即使你设计出了一个令人敬畏的神奇的方式来保持密钥的秘密,在某些时候你必须制作实际的API请求,因为它必须从浏览器发送,所以攻击者将能够读出密钥来自Firebugs网页的纯文本。

正确的做法是在需要密钥的API调用周围创建一个PHP包装,然后从Javascript调用该包装。

http://stackoverflow.com/questions/11470389/how-to-protect-an-api-key-when-using-javascript

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:使用JavaScript时如何保护API密钥?