【问题标题】:Post request secure, only my site can post to server发布请求安全,只有我的网站可以发布到服务器
【发布时间】:2022-02-07 03:38:40
【问题描述】:

我想从 React 向 Node.js 发出一个 Post 请求,但在 Payload 的开发者工具中,它向我显示了密钥,如果它向我显示我还没有解决任何问题,有什么办法吗?安全地做到这一点?并且在开发者工具中不显示 SECRET KEY?

我的反应发布请求代码

     .post("http://.../api/test", {
          secret: process.env.REACT_APP_SECRET_KEY,
          battleData: battleData,
          accountCurent: accountCurent,
        })
        .then(function (response) {}
....

还有我的 Node.js 代码

app.post("/api/test", (req, res) => {
if(req.body.secret === process.env.REACT_APP_SECRET_KEY){}
...// I only want when Secret Key is identical by Node to the frontEnd and run my code in Node.js

【问题讨论】:

  • 如果你在客户端发布它,它在开发者工具中并没有错。

标签: node.js reactjs ssl


【解决方案1】:

不,如果秘密是前端的一部分,用户将总是能够找到它。与其解决这个问题,不如尝试确保不需要秘密。

【讨论】:

    【解决方案2】:

    我可以建议您为每个用户动态创建不同的 SECERET_KEY,这样如果任何用户都可以找到自己的密钥,它只能在自己的数据中访问,而不能访问不需要的数据 您应该了解有关身份验证和授权的更多信息 检查passport.js

    【讨论】:

    • 我没有使用用户,我只有 Metamask 的一个帐户,但我只需要我的网站能够向 Node js 发送信息,我真的不知道该怎么做
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-27
    相关资源
    最近更新 更多