javascript - java POST 415(不支持的媒体类型)

标签 javascript java spring jsp

我正在尝试将字段的值从 jsp 获取到 spring mvc Controller 。来自 jsp 的值不是表单,因此我无法使用 HttpServletRequest 直接获取值。因此,我使用 document.getElementById('fieldName').value 获取 js 中的值,创建一个对象,对其进行 strigify 并使用 AJAX 将其发送到 Controller 。但是,我收到 415(不支持的媒体类型)错误。下面是我的js代码和 Controller 代码:

function getInput(){
    var ageMin=document.getElementById('age_min').value;
    var ageMax=document.getElementById('age_max').value;
    var creditMin=document.getElementById('credit_min').value;
    var obj = {"ageMin":ageMin,"ageMax":ageMax, "creditMin":creditMin};
    console.log(obj);
    var sobj=JSON.stringify(obj);
    console.log(sobj);
    $.ajax({
        url: "http://localhost:8080/login/validate.mvc",
        type: 'POST',
        data: sobj,  
        contentType: "application/json; charset=utf-8",
        success: function(results) {
        }
    });     
}


Controller:


    @RequestMapping(value = "/validate.mvc", method = RequestMethod.POST )
        public void getValidate(@RequestBody Object sobj){  

            System.out.println(sobj);
        }

最佳答案

只需指定数据类型属性即可解决您的问题

datatype : "json",

关于javascript - java POST 415(不支持的媒体类型),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31985386/

相关文章:

javascript - Angular ng-show 不连续检查条件?

javascript - 如何从下拉菜单中更改 DIV 的背景颜色?

java - 跟踪 Canvas 上的点的最佳方法

java - 了解 maven-enforcer-plugin 在某些 pom 文件中的使用方式

java - 从数字列表中生成所有唯一对,n 选择 2

java - 无法使 Spring JMX NotificationListener 工作

java - 无法在 Spring 项目中注册自定义实体

javascript - 舞者2 (Perl) : launching an external Program in the background

javascript - 在执行 render 方法之前 React 显示组件

java - spring表单路径数据绑定(bind)属性的文档