因此,我正在开发一个供自己使用的小型应用程序,也许是一个关于Git的开源项目。我使用的是Envato Marketplaces的API,众所周知,有些操作不需要任何键,但是同时有些操作也需要。

我首先为PHP中的Envato API创建了一个不错的API包装器,但是后来我决定对JavaScript进行一些试验,因此我正在使用JavaScript开发相同的包装器。到目前为止,我对公共(public)操作没有任何问题,但是现在我必须使用API​​ key 。

我的问题是,是否有一种方法可以保护JavaScript中的API key 。我不能只是将其放在纯文本中,否则其他看到代码的人可以使用它。那么是否会有API保密的实现?也许使用XHR从JSON文本文件中获取它?

最佳答案

简短答案:否

无论对 key 进行混淆处理,还是必须将其发送以某种方式使其在客户端上可用,因此可以使用fx提取 key 。 Firebug 。

即使您设计了一种神奇的神奇方法来将 key 保密,在某些时候您也必须提出实际的API请求,并且由于必须从浏览器发送该请求,攻击者才能读出 key 从Firebugs的“Net”标签中以纯文本格式显示。

正确的做法是围绕需要 key 的API调用创建一个PHP包装器,然后从Javascript调用该包装器。

10-07 19:28
查看更多