首页 > 其他分享 >HarmonyOS实现登录页面(六)测试(附DevEco Studio中的js代码)

HarmonyOS实现登录页面(六)测试(附DevEco Studio中的js代码)

时间:2022-12-15 10:01:35浏览次数:58  
标签:info http DevEco js HarmonyOS result console data user

测试

结果

对应代码

// data.result为http响应内容,可根据业务需要进行解析
console.info('Result:' + data.result);
// ***http 响应码*** success:200 | server_error:500 | resourse not found:404 | bad request:400| 405(后台POST GET请求混乱)
console.info('code:' + data.responseCode);

js代码

import router from '@ohos.router'
import http from '@ohos.net.http';
import prompt from '@ohos.prompt';
export default {
    data: {
        user:{
            username:'',
            password:''
        }
    },
    onInit() {
    },
    changeUsername(event){//通过方法获得输入框的值
        this.user.username = event.value;
    },
    changePassword(event){//通过方法获得输入框的值
        this.user.username = event.value;
    },
    login(){
        // 每一个httpRequest对应一个http请求任务,不可复用
        let httpRequest = http.createHttp();
        // http://cmn8ut.natappfree.cc/api/login
        httpRequest.request(
            // ***填写http请求的url地址,可以带参数也可以不带参数。URL地址需要开发者自定义。请求的参数可以在extraData中指定***
            'http://nja5ih.natappfree.cc/api/login',
            {
                method: http.RequestMethod.POST, // 可选,默认为http.RequestMethod.GET
                // 开发者根据自身业务需要添加header字段
                header: {
                    'Content-Type': 'application/json'
                },
                // ***当使用POST请求时此字段用于传递内容***
                extraData: this.user,
                connectTimeout: 60000, // 可选,默认为60s,连接超时时间
                readTimeout: 60000, // 可选,默认为60s,读取超时时间
            }, (err, data) => {//err成功与否,data后台服务器返回的结果
                if (!err) {//成功
                    // data.result为http响应内容,可根据业务需要进行解析
                    console.info('Result:' + data.result);
                    // ***http 响应码*** success:200 | server_error:500 | resourse not found:404 | bad request:400| 405(后台POST GET请求混乱)
                    /**
                     * Result:{"data":{"dingNumber":"未绑定","email":"[email protected]","id":1,
                     * "nickname":"神里凌华","password":"","phone":"123345653434","qqNumber":"2354754345",
                     * "signature":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","stuNumber":"zz-2002-001",
                     * "username":"z","wechat":"zzhasid"},"message":"login success","operate":true}
                     */
                    console.info('code:' + data.responseCode);

                    //data.result >> 数据类型:String >> 为了后续的操作,需将data.result转成JSON对象
                    let result = JSON.parse(data.result);
                    if(result.operate){//成功跳转到首页

                        //将user 保存在app缓存(app.js)中,方便后续功能模块的使用,提高程序运行效率。

                        this.$app.$def.globalParams.user = result.data; // result.data > {"nickname":"神里凌华","password":"", ...}

                        router.push({
                            url:'pages/main/main'
                        });
                    }else{
                        prompt.showToast({
                            message: result.message
                        })
                    }

                } else {//失败
                    console.info('error:' + JSON.stringify(err));
                    // 当该请求使用完毕时,调用destroy方法主动销毁。
                    httpRequest.destroy();//对象销毁
                }
            }
        );

    }
}

标签:info,http,DevEco,js,HarmonyOS,result,console,data,user
From: https://www.cnblogs.com/chuixulvcao/p/16984016.html

相关文章

  • 百度文库-js学习文档
    JS实例学习笔记——w3cschool+菜鸟教程基础实例——w3cschoolwrite()document.write("thisisastring");//⽣成普通⽂本document.write("<br>"+Date());//html+函数......
  • HarmonyOS实现登录页面(五)config.json代码(打开网络权限+去掉顶部lable+改为发送http明
    config.json新增代码:打开网络权限"reqPermissions":[{//打开网络权限"name":"ohos.permission.INTERNET"}]新增代码:去掉上边栏lable"met......
  • threejs 键盘控制运动 前进 后退 左转 右转
    输出效果代码import{PlaneGeometry,Scene,PerspectiveCamera,WebGLRenderer,Object3D,Clock,AnimationMixer,Color,AmbientLight,Direc......
  • [JSOI2015]地铁线路
    链接:https://www.luogu.com.cn/problem/P6096题目描述:给定\(n\)条线路,每一条线路可以贯通若干个点,若每座一个地铁就要付\(1\)元。求:\(1.\)\(s\)到\(t\)最少要付多少钱。......
  • PHP 如何获取 POST 请求发送的 JSON 对象参数 All In One
    PHP如何获取POST请求发送的JSON对象参数AllInOnephpgetpostjsondata#GetJSONasastring$json_str=file_get_contents('php://input');#Getasa......
  • [AHOI2014/JSOI2014]骑士游戏
    链接:https://www.luogu.com.cn/problem/P4042题目描述:对于一个怪物\(i\),可以花费\(c_{i}\)的代价将其变为一个怪物集合,或花费\(c2_{i}\)的代价消灭他。求消灭怪物\(1\)的......
  • [AHOI2014/JSOI2014]支线剧情
    链接:https://www.luogu.com.cn/problem/P4044题目描述:给定一个\(DAG\),求若干条条路径,覆盖所有的点,并最小化路径的权值和。题解:由于图是一个\(DAG\),所以原问题可以转化......
  • [AHOI2014/JSOI2014]奇怪的计算器
    链接:https://www.luogu.com.cn/problem/P4041题目描述:给定一个数列\(a\),与常数\(L\),\(R\),实现下列四个操作:1.将所有数加\(d\)。2.将所有数减\(d\)。3.将所有数乘\(d......
  • [JSOI2014]支线剧情2
    链接:https://vjudge.net/problem/HYSBZ-5031题目描述:给定一个树形图,规定一号点为根节点。到达一个点时可以进行下列操作:\(1\).沿着一条有向边走到下一个节点。\(2\).回......
  • [JSOI2013]旅行时的困惑
    链接:https://www.luogu.com.cn/problem/P5258题目描述:给定一颗有向树,求至少多少条有向路径可以覆盖整颗树(有向路径可以相交)题解:路径的覆盖,我们容易想到赛道修建那样的......