Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在客户端JavaScript中使用Flickr API密钥安全吗?_Javascript_Security_Flickr - Fatal编程技术网

在客户端JavaScript中使用Flickr API密钥安全吗?

在客户端JavaScript中使用Flickr API密钥安全吗?,javascript,security,flickr,Javascript,Security,Flickr,我想使用JavaScript中的Flickr API方法Flickr.photos.search,搜索所有带有特定标记的照片: http://api.flickr.com/services/rest/?method=flickr.photos.search&api_key={API_KEY}&user_id=50001188%40N00&tags=fazynet&format=rest (要使其工作,请将{API_KEY}更改为有效的Flickr API密钥。)

我想使用JavaScript中的Flickr API方法Flickr.photos.search,搜索所有带有特定标记的照片:

http://api.flickr.com/services/rest/?method=flickr.photos.search&api_key={API_KEY}&user_id=50001188%40N00&tags=fazynet&format=rest
(要使其工作,请将
{API_KEY}
更改为有效的Flickr API密钥。)

我的问题是:在客户端JavaScript中包含该密钥安全吗?

我见过一些教程网站这样做,但如何阻止有人复制他们(或我的)的API密钥并超过速率限制呢

当然,我可以在Node.js中设置一个非常简单的代理来插入密钥(甚至Apache或Nginx也可以),但这是另外一件需要设置和监视的事情

如果有一个安全、纯JavaScript的解决方案,我会选择它

注意,我当前使用的查询不需要身份验证:

http://api.flickr.com/services/feeds/photos_public.gne?id=50001188@N00&tags=fazynet&format=json

但是,结果似乎不再反映更改(至少等待24小时后)。

恐怕没有一种纯JavaScript方法来实现这一点,您必须创建一个服务器端脚本来执行API调用,并调用该脚本。

没有办法。如果您在客户端代码中使用它,最终用户将看到它,并且他们可以将它复制到自己的脚本中。你能做的最好的事情就是混淆你的Javascript,让他们更难理解它。当然,我还没有想到用当前的Flickr API可以做到这一点(也许他们可以将其更改为只允许来自特定域的请求,但甚至不确定这是否可能)。不幸的是,由于请求来自用户浏览器,因此他们不知道(或确认)请求来自哪个域。另外,这真的没有任何必要。但这是个好问题。