Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 弹簧靴支撑服务|请求方法#x27;获取';不支持_Java_Jquery_Html_Rest_Spring Boot - Fatal编程技术网

Java 弹簧靴支撑服务|请求方法#x27;获取';不支持

Java 弹簧靴支撑服务|请求方法#x27;获取';不支持,java,jquery,html,rest,spring-boot,Java,Jquery,Html,Rest,Spring Boot,我用spring boot做了一个hello world rest服务。 我能够通过独立的java程序调用该服务。我也可以通过Chrome的附加组件来调用它 但当我试图使用jQueryAjax通过一个独立的HTML页面点击它时,我得到了一个错误 警告3748---[nio-9000-exec-2]o.s.web.servlet.PageNotFound:不支持请求方法“GET” 感谢您的帮助 PS:我假设我能够使用其他方法调用Web服务 模式,使控制器处于良好状态。但我现在的样子有些不对劲 从H

我用spring boot做了一个hello world rest服务。 我能够通过独立的java程序调用该服务。我也可以通过Chrome的附加组件来调用它

但当我试图使用jQueryAjax通过一个独立的HTML页面点击它时,我得到了一个错误

警告3748---[nio-9000-exec-2]o.s.web.servlet.PageNotFound:不支持请求方法“GET”

感谢您的帮助

PS:我假设我能够使用其他方法调用Web服务 模式,使控制器处于良好状态。但我现在的样子有些不对劲 从HTML调用它

下面的HTML页面:


客户
$(文档).ready(函数(){
$(“#提交”)。单击(函数(){
变量输入={
“名称”:$(“#名称”).val(),
“语言”:$(“#语言”).val()
};
var inputStr=JSON.stringify(输入);
警报(inputStr);
$.ajax({
url:“http://localhost:9000/rest/greetMeObj/",
方法:“张贴”,
数据:inputStr,
数据类型:“jsonp”,
成功:函数(输出){//用于进一步操作的回调方法
var str=JSON.stringify(输出);
$(“#输出”)。文本(数据);
},
错误:函数(数据){//如果发生错误
$(“#错误”)。文本(数据);
}
});
});
});
姓名:


语言: 英语 法语 荷兰的

提交
我想解决方案如下所述:

RequestMapping中的两个值必须相同。因此,对于每个值,必须定义一个GET值和一个POST值

@RequestMapping(value="/rest/greetMe", method= RequestMethod.GET)
public @ResponseBody Greeting sayHello(
        @RequestParam(value = "name", required = false, defaultValue = "Stranger") String name,
        @RequestParam(value = "language", required = false, defaultValue = "en") String language) {
    return new Greeting(counter.incrementAndGet(), String.format(getTemplate(language), name));
}

@RequestMapping(value="/rest/greetMe", method= RequestMethod.POST)
public @ResponseBody Greeting sayHello(
        @RequestBody(required = true) Input input) {
    return new Greeting(counter.incrementAndGet(),
            String.format(getTemplate(input.getLanguage()), input.getName()));
}

如果已将这些调用映射到默认映射,请检查控制器:

    @DeleteMapping()
    @PostMapping()
    @GetMapping()
它被映射到
path=“/”
。请换成

    @DeleteMapping(path="/something")
    @PostMapping(path="/something")
    @GetMapping(path="/something")

这只是一个警告,所以你可以忽略它?或者这个警告会导致另一个错误吗?显然,您不能用jsonp发布跨域请求