前端API令牌暴露

时间:2016-12-10 23:41:40

标签: javascript api

我的问题很简单而且一般:在调用RESTFUL API时,无论是我的还是外部API,将令牌暴露在前端是否常见?例如,在Google Maps API的文档中,他们建议使用以下代码:

<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap"
    async defer></script>

您的API密钥暴露在前端以供所有人查看,这样的事实可以吗?我猜谷歌可以选择限制访问权限,这样可以解决这个问题,但是那些不提供该选项的其他服务呢?

将API调用保留在后端以保护我的令牌会更好吗?我认为,将它们放在后端,不会是首选,因为它们无法异步获取数据

1 个答案:

答案 0 :(得分:0)

简而言之,是的,如果您可以在客户端系统上欺骗http referer标头,则可以在您的网站中使用其他API密钥。事实上,如果您拥有其中任何一个,您甚至可以完全满足其配额

  1. 完全控制您的客户端浏览器(操纵可能发送给Google服务器的HTTP标头)
  2. 你拥有大量独特的知识产权地址(只有当你非常富有时才会尝试,只有你在生活中留下的动机就是清空他的配额xD)
  3. Idk atm将告诉我是否了解更多内容或有人发表评论