休息控制器工作但 ajax post 方法 return 一个错误

rest controller works but ajax post method return an error

我正在使用 $.ajax 创建一个 post 方法,即

$(function(){

     $("#postMembers").click(function(){
            let member ={
                firstName: "khookina",
                lastName : "khooak",
                age:1,
                sex:"female",
                duty:"undefined",
                dailyJeton:2
            }

            $.ajax({
                type: "post",
                url: "http://localhost:8080/RCP2/members",
                data: member,
                dataType: "application/json",
                success: function (response) {
                    alert("success");
                },
                error: function(error){
                    alert("error");


                }
            });


        }); 

我的休息控制器是这个

@PostMapping(consumes = {MediaType.APPLICATION_FORM_URLENCODED_VALUE}, produces = {MediaType.APPLICATION_JSON_UTF8_VALUE})
public String createMembers(Member member) {
    if (member.hasError()) {
        throw new CreatePersonException("All the fields must be filled properly in order to create a new member.");
    }

    if (personDao.createMember(member)) {
        return "Member: " + member.getFirstName() + " " + member.getLastName() + " successfully created.";
    }

    return "couldn't create member, please try again later.";

}

我在执行此ajax post方法的网页中有一个创建会员按钮,当我按下它时,一切正常,会员信息被发送到其余控制器,它得到创建(100% 工作)并调用 ajax post 方法的 returns {"readyState":4 status":200, "statusText":"parsererror"}error: function(error)

有什么问题?

这是我与 ajax 和 javascript 一起工作的第一天,我真的不明白发生了什么。

提前致谢

P.S 我试过更改数据类型 text jsonjson 和类似问题中建议的其他一些,但它们对我不起作用,所以我决定自己出题。

从 ajax 请求中删除数据类型并且它有效。

删除这个。

dataType: "application/json"

详情参考this

尝试改变

data: JSON.stringify(member) 你会在结果/

中得到成功的回应