请问后端返回的json数据和layui admin的不匹配,应该怎么修改?

提问 未结 14 426
ddtc
ddtc VIP3 2019-7-10
悬赏:20飞吻
请问后端返回的json数据和layui admin的不匹配,应该怎么修改?
layui的字段有code,msg,data,后端也必须返回这几个吗?还是说可以修改。总是提示错误状态码或者parsererror,求教!
回帖
  • lll_lll
    2019-7-10
    @ddtc 没有响应回调函数吗
    你用的是下面这个改的吗

    如果是这个是表单,那你可以把admin.req()改为监听表单提交发送求情,在响应回调函数里面判断你后端返回大数据就行
    1 回复
  • lll_lll
    2019-7-10
    你好,请问你是用什么组件获取数据,多看看文档吧,比如table就可以处理响应数据,还是建议后端返回数据格式最好和前端一样
    0 回复
  • 你可以吧拿到的数组按照需求的格式封装呀
    0 回复
  • ddtc
    2019-7-10
    @lll_lll 只是实现简单的登录功能,这个项目是前后端分离的,已经写好了,但是要改成layui的,后端是不改的。后端登录功能的controller返回的是{"errMessage":"成功","errNo":"200","independentPay":0,"permission":"management","token":"c23607cd96b54c658eec599a8a6441a5201907250"}。想问下layui中怎么改?
    0 回复
  • lll_lll
    2019-7-10
    @ddtc 改成layui登录页面也不难呀,写一个表单,用ajax提交判断返回数据是否成功就行,这样就不用规定必须是什么返回格式呀
    0 回复
  • ddtc
    2019-7-10
    @lll_lll 我是买了layuiadmin在上面修改的,只要返回的数据格式不是它要求的格式,就会提示返回状态码异常,不知道怎么设置。
    0 回复
  • 一品轩
    2019-7-10
    把后端返回的格式自己在按照 layui的格式转换一下就差不多了
    0 回复
  • lll_lll
    2019-7-10
    @ddtc 没用过,但是你数据都没有肯定会报错呀,拿不到code还谈什么登录成功失败
    能看一下你请求后台的写法吗
    0 回复
  • ddtc
    2019-7-10
    admin.req({

    url: 'http://localhost:8081/ddtcManagement/user/login?userId='+username+'&passwd='+password //实际使用请改成服务端真实接口

    ,data: obj.field

    ,done: function(res){
    console.log(res);

    //请求成功后,写入 access_token
    layui.data(setter.tableName, {
    key: setter.request.tokenName
    ,value: res.token
    });


    //登入成功的提示与跳转
    layer.msg('登入成功', {
    offset: '15px'
    ,icon: 1
    ,time: 1000
    }, function(){
    // location.hash = search.redirect ? decodeURIComponent(search.redirect) : '/';
    location.hash ='/home/homepage1';
    });
    }
    });

    });


    //实际使用时记得删除该代码
    layer.msg('请输入正确的用户名和密码', {
    offset: '15px'
    ,icon: 1
    });

    });
    0 回复
  • ddtc
    2019-7-10
    @lll_lll admin.req({

    url: 'http://localhost:8081/ddtcManagement/user/login?userId='+username+'&passwd='+password //实际使用请改成服务端真实接口

    ,data: obj.field

    ,done: function(res){
    console.log(res);

    //请求成功后,写入 access_token
    layui.data(setter.tableName, {
    key: setter.request.tokenName
    ,value: res.token
    });


    //登入成功的提示与跳转
    layer.msg('登入成功', {
    offset: '15px'
    ,icon: 1
    ,time: 1000
    }, function(){
    // location.hash = search.redirect ? decodeURIComponent(search.redirect) : '/';
    location.hash ='/home/homepage1';
    });
    }
    });

    });


    //实际使用时记得删除该代码
    layer.msg('请输入正确的用户名和密码', {
    offset: '15px'
    ,icon: 1
    });

    });
    0 回复