node.js - 处理来自前端的 API 调用的最佳方式

标签 node.js express vue.js axios nuxt.js

好的,所以 atm 我有一个使用 Nuxt JS 构建的前端应用程序,使用 Axios 向我的 REST API(单独的)发出请求。

如果用户在网站上进行搜索,则 API URL 在 XMLHttprequests 中可见,因此每个人都可以根据需要使用该 API。

最好的方法是什么,以便只有通过我的网站搜索的用户才能访问 API,而直接访问 URL 的用户会被拒绝。我想使用某种 token 系统,但是最好的方法是什么?智威汤逊? (用户从不登录,因此没有“身份验证”)

谢谢!

最佳答案

  1. IMO,您不能阻止其他非法客户端访问您的 正如您所描述的,官方客户和其他非法客户对您的后端具有相同的知识
  2. 但是您可以通过某些方法让非法客户端更难访问您的后端,例如POST 所有请求 header 中的特殊键 header 中的 30 分钟更改 token 客户端 IP 的服务器端 API 限制.
  3. 如果搜索API的安全性确实很重要,请通过登录进行身份验证;如果没有,那就放手吧,因为它不在你的关键路径上。让我们关注其他重要的事情。

关于node.js - 处理来自前端的 API 调用的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47841937/

相关文章:

node.js - 获取 connect-redis 上现有 session 的列表

javascript - 是否有任何选项可以减小图像大小并在具有多种功能的nodejs中调整图像大小?

javascript - 如何将数据插入到res.render函数中?

node.js - Bower 初始化命令错误

javascript - 异步等待在express.js和mysql.js中没有响应

javascript - 返回 Express Router 中间件内部

javascript - 如何在 vuex 中将 2 个参数传递给 getter?

vue.js - vuejs - 计算不适用于 Prop

javascript - vuejs中渲染完所有图片后执行代码

mysql - 如何使用 Node.js 在 mysql 上执行 CURD