• spring controller使用了@ResponseBody却返回xml


    使用ajax请求数据

    $.ajax({

       url:message.rootPath +"/sendMessage.xhtml",
    type:"post",
    dataType:"json",
    data:
    {
    sendWay:sendWay,
    sendTo:sendTo,
    groupId:groupId,
    userId:userId,
    messageTitle:messageTitle,
    messageTicket:messageTicket,
    messageType:messageType,
    messageContent:messageContent
    },
    success:function(result)
    {
    if(result.success)
    {
    parent.$.messager.alert("提示","发送成功")
    }else
    {
    parent.$.messager.alert("提示","发送失败")
    }
    },
    error:function()
    {
    parent.$.messager.alert("提示","系统异常")

    }
    });
    controller里
    /**
    * 后台配置发送消息
    * @param messageForm
    * @return
    */
    @RequestMapping(value="sendMessage.xhtml",method=RequestMethod.POST)
    @ResponseBody
    public ResponseEntity<Void> sendMessage(MessageForm messageForm)
    {
    try {
    messageFormService.sendMessage(messageForm);
    return new ResponseEntity<Void>(true);
    } catch (AdqException e) {
    e.printStackTrace();
    }
    return new ResponseEntity<Void>(false);
    }

    同一个Action中返回实体能解析成json
    最后发现是前端ajax没有加dataType
    看Jquery API
    预期服务器返回的数据类型。如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息来智能判断,比如XML MIME类型就被识别为XML。
    在1.4中,JSON就会生成一个JavaScript对象,而script则会执行这个脚本。随后服务器端返回的数据会根据这个值解析后,传递给回调函数。
     
  • 相关阅读:
    springboot 路由 json
    mybatis-plus 条件构造器 Wrapper
    mybatis-plus 逻辑删除
    mybatis-plus 分页查询
    mybatis-plus 乐观锁
    mybatis-plus 自动填充处理
    mybatis-plus 增删改查(普通)
    mybatis-plus 日志
    mybatis-plus 初识
    React项目如何打包发布及遇到的坑
  • 原文地址:https://www.cnblogs.com/alway-july/p/6555522.html
Copyright © 2020-2023  润新知