首页 > 解决方案 > 如何在 React.js 中让 Axios 请求在移动设备上工作

问题描述

部署我的实时站点后,一切都在桌面上运行。我能够接受用户输入,将其发送到服务器,然后使用nodemailer将其发送到我的电子邮件。

但是,由于某种原因,它不适用于我的手机或任何其他手机。

我试过做一个简单的获取请求,但这也不起作用。我尝试过使用 fetch。我知道该功能仍然可以在移动设备上运行,因为我测试了其他功能没有问题,只是 HTTP 请求不起作用。

handleSubmit = e => {
        const { name, email, phone } = this.state
        e.preventDefault()

        const userInfo= {
            name, email, phone
        }
        const newInfo= JSON.stringify(userInfo)
        axios.post("http://localhost:9000/email", newInfo).then(res => console.log(res.data));
}

我的表格看起来像这样

<form name="contact" onSubmit={this.handleSubmit}>
     <input type="text" name="name" value={name} onChange={this.handleChange} />
     <input type="text" name="phone" value={phone} onChange={this.handleChange} />
     <input type="text" name="email" value={email} onChange={this.handleChange} />  
  <p>
    <button type="submit">Send</button>
  </p>
</form>

我已经尝试过按钮上的事件,例如onClick手机onStartTouch和移动设备,但仍然没有结果。HTTP 请求在手机和移动设备上的工作方式是否不同?

标签: reactjshttpaxios

解决方案


我面临同样的问题,网络桌面工作正常,但在移动设备中访问时,得到“NetworkError”


推荐阅读