react native运行成功后卡在登录页面怎么破?

发布于 2022-09-06 09:11:51 字数 1933 浏览 5 评论 0

react native 运行项目后登录没反应,卡住很久才会弹出一个alert,提示TypeError:network request failed。但有的时候就可以成功的登录,大多时候不行,时好时坏,不知哪里出问题。
不论是用 真机运行 还是 虚拟机 都会这样。
项目运行没问题;网络连接没问题;sdk路径及配置都是按照react native 中文网的步骤配置的;
login的代码如下:

  toLogin(props){
    var url = Consts.urlpr + "auth/relogin/logincheck"
    var md = forge.md.md5.create();
    md.update(this.state.password);
    let password = md.digest().toHex();
    let formData = new FormData();
    formData.append("argusername", this.state.username);
    formData.append("arguserpass", password);
    formData.append("argtenantid", '10010');
    var opts = {
      method:"Post",
      body:formData
    }
    fetch(url, opts)
    .then((response) => {
      return response.text();
    })
    .then((responseText) => {
      if(JSON.parse(responseText).RetCode == '1'){
        global.userid = JSON.parse(responseText).DataRows[0].userid;
        global.deptid = JSON.parse(responseText).DataRows[0].dept_id;
        global.tel = JSON.parse(responseText).DataRows[0].tel;
        global.username = JSON.parse(responseText).DataRows[0].username;
        global.deptName = JSON.parse(responseText).DataRows[0].dept_name;
        if(Consts.version != 1.0){
            Modal.alert('更新版本', '您的版本需要更新,是否重新下载?', [
              { text: '取消', onPress: () => {
                Toast.success('登录成功',1);
                this.props.navigation.navigate('luMainPage',{info:"主页"})
              }},
              { text: '下载', onPress: () => Linking.openURL('http://202.99.45.110:8088/mobileservicern/') },
            ]);
        }
        else{
          Toast.success('登录成功',1);
          this.props.navigation.navigate('luMainPage',{info:"主页"})
        }
      }
      else{
        Toast.fail(JSON.parse(responseText).RetVal)
      }
    })
    .catch((error) => {
      alert(error);
    })

  };

上网查了半天也没找到解决办法,求高人指点迷津...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

傲性难收 2022-09-13 09:11:51

1.使用postman 测试接口是否有问题
2.接口没问题的话在第一个then里面alert(response.text())一下
就你的描述来说,接口应该是有问题的。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文