javascript - 来自客户端访问 API 的 AJAX 请求的安全性

标签 javascript ajax json security api

假设您希望第三方网站复制并粘贴您提供的一段 javascript 代码。此代码使用 AJAX 请求访问服务器上的 JSON API。您将如何实现安全性,以便在将 API 使用与已注册并收到 API key 的网站相关联时,有效地禁止网站滥用另一个网站的 API key /使用?客户端无法实现这种安全性吗?网站必须从服务器访问 API 吗?

最佳答案

您还可以在您的服务器站点上检查请求的 HTTP 引荐来源网址。
我不认为更改 javascript 代码可以伪造它。
但它不能阻止某人从自定义浏览器或某些 http 客户端发送自定义包。

实现服务器端解决方案是可能的,而且不太难,但它会阻止许多站点使用您的脚本。
你可以让他们从他们的服务器发送请求
或者让他们将 key 保存在他们的服务器上,在将 key 发送给客户端之前对 key 进行哈希处理(经过哈希处理的 key 会在一段时间后发生变化)...

关于javascript - 来自客户端访问 API 的 AJAX 请求的安全性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7624110/

相关文章:

javascript - ajax内容应用到元素后执行js函数

javascript - 使用 jQuery Ajax 成功时显示脚本

javascript - 大视频上传处理超时

javascript - 通过值比较合并 JSON 对象

java - 如何使用 Java 在 SQL Server 中持久保存大型 JSON 字符串

javascript - 我应该使用什么命名方案来使用 AJAX 将数据传递到 MySQL 表

javascript - 在 Jquery 中为 mouseenter 上的阴影设置动画

javascript - eval() 是否在方法中以严格模式运行?

javascript - 使用 jQuery 为网站提供动态下拉菜单

java - Struts2 REST 插件 : Passing array in JSON