React - 是否在客户端可以访问/读取渲染中设置的变量?

时间:2018-01-27 16:53:33

标签: javascript reactjs

我有以下代码用于渲染我的元素:

render() {
     let bla = "boum boum"
     let blaHash = sha(bla)
     return ( <div>{blaHash}</div> )
}

我想知道客户端是否可以在代码中或在控制台中访问变量bla并获取“boum boum”文本。它是一种在散列之前保存数据的方法吗?如果不是(我认为不是)在不损害bla变量的情况下获得哈希的解决方案是什么?

1 个答案:

答案 0 :(得分:0)

是的,可以从客户端查看您的哈希密钥。 我认为最好从服务器端获取散列值,然后在渲染函数中使用该值。例如:

GenKey() {
    $.getJSON('https://yourserver.com/api/{keyGen}')
      .then(({ result }) => this.setState({ key: results }));
  }

  render() {
     this.GenKey();
     let blaHash = this.state.key;
     return ( <div>{blaHash}</div> )
    ));

对于更安全的哈希,您还可以在客户端生成随机模式,并使用服务器端密钥附加该模式,然后生成哈希。当您调用服务来存储散列值时,也将传递的生成模式传递给服务器。