微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在后端服务器上处理API密钥的推荐方法?

如何解决在后端服务器上处理API密钥的推荐方法?

我正在建立一个网站,该网站必须从Riot Developer Portal请求数据。我已经阅读了文档,并尝试使用fetch()。

fetch('https://na1.api.riotgames.com/lol/summoner/v4/summoners/by-name/Doublelift?api_key="KEY')
  .then(response => response.json())
  .then(data => console.log(data));

这导致出现CORS错误,我对此进行了调查。并且了解到您基本上可以做到这一点,因为您的API密钥位于客户端,这将是一个安全问题。

  • 所请求的资源上不存在“ Access-Control-Allow-Origin”标头。如果不透明的响应满足您的需求,请将请求的模式设置为“ no-cors”以在禁用CORS的情况下获取资源。 *

我尝试使用模式:“ no-cors”或“ cors”。

所以我需要创建一个后端服务器,但是我不知道该怎么做。在搜索中,我发现了本指南:AWS Guide to setting up server API Gateway with Lamda,但是AWS界面已更改,所以我不知道如何遵循本指南。

我的主要问题: 如何正确学习后端服务器并能够解决此问题?

解决方法

实现后端(如果您是JavaScript开发人员)的最简单方法是通过node.js并使用express.js框架。观看有关使用express / node.js创建rest api的youtube指南

您将fetch()到服务器,这将fetch()到Riot的API,然后将响应返回到字体结尾。 Cors由浏览器应用,因此您需要服务器向Riot的API发出请求。并且由于是您的服务器,您可以将其配置为接受来自您的域或IP地址的cors。

您可以非常轻松地将后端部署在heroku上。 AWS API Gateway和Lambda也是一个不错的选择,但是对于学习后端的人来说要困难一些。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。