reactjs React可变进口安全

abithluo  于 2023-01-30  发布在  React
关注(0)|答案(1)|浏览(141)

如果我将一个对象导入React文件以使用其中的一些值,是否会导致安全问题?
也就是说,如果我有这样一个对象:

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

我这样导入它:

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

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

ulydmbyx

ulydmbyx1#

你应该把任何发送到客户机的代码都看作是公开的,任何足够专注的开发人员最终都可以对它进行逆向工程(尽管代码的大小和缩小/模糊化可能会使其更加困难)。
要使secret保密,唯一的方法是首先不要将其发送到客户机--如果所有的呈现都在服务器上完成,而生成的HTML标记被发送到客户机,则可以做到这一点(也就是说,由于客户机呈现的组件具有更大的灵活性,因此通常更有意义的做法是 * 不要 * 将敏感值包含在客户机的包中)。

相关问题