在 React.js 中以组件状态存储表单输入,特别是密码

2024-03-22

有一个关于 React.js 中表单的问题。我实际上没有问题,但想知道我的方法是否有任何缺陷。

我有一个简单的表单,有两个电子邮件和密码输入,如下所示:

  <input
   type="email"
   name="email"
   value={this.state.email}
   onChange={this.handleChange}
   data-message-required="Please enter your email address"
   data-message-email="Please enter a VALID email address"
   />

and

<input
 type="password"
 name="password"
 value={this.state.password}
 onChange={this.handleChange}
 data-minlength="3"
 data-maxnlength="20"
 data-message="Please enter your password"
 />

handleChange() 的写法如下:

  handleChange = e => {
   this.setState({
    [e.target.name]:e.target.value
  })}

我的问题是,这段代码是否存在漏洞?使用 React Dev Tools 时,我可以跟踪组件的内部状态,并且密码显示为明文。我不确定这是否意味着其他来源可以通过跟踪组件的状态来获取密码。

抱歉,如果这个问题之前已经得到解答,我进行了快速搜索,但找不到专门针对该主题的内容。谢谢你的时间。


不,这里没有漏洞:用户输入密码后,将能够在浏览器中看到密码......

密码不应该成为其所有者的秘密......:-)

当然你会使用https如果您将密码发送到服务器,则使用协议,否则它将可见在电缆上, 一个那个is安全问题!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 React.js 中以组件状态存储表单输入,特别是密码 的相关文章