保障React变量导入的安全性
P粉610028841
P粉610028841 2023-09-16 15:11:12
0
1
898

如果我在React文件中导入一个对象以使用其中的一些值,会导致安全问题吗?

例如,如果我有一个像这样的对象:

var data = {
     'name': 'Adam',
     'id': 12345,
     'secret': 98765
}

并且我像这样导入它:

import { data } from 'db.js';
 
function Index(){
     return(
          <>
             {data.name}
             {data.id}
          </>
     );
}

我会创建一个场景,使得某人可以使用导入的“data”对象调用并查看“secret”值,还是React会阻止这种情况发生?

P粉610028841
P粉610028841

全部回复(1)
P粉852114752

您应该将发送到客户端机器的任何代码视为公开的。任何足够专注的开发人员最终都可以进行逆向工程(尽管代码的大小和缩小/混淆可能会增加难度)。

保持secret秘密的唯一方法是首先不将其发送到客户端 - 这可以通过在服务器上完成所有渲染工作,然后将生成的HTML标记发送到客户端来实现。(话虽如此,由于客户端渲染组件的灵活性更大,通常最好的做法是在客户端的捆绑包中包含敏感值。)

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板