Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.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
Javascript AJAX响应总是405_Javascript_Java_Ajax_Spring_Spring Mvc - Fatal编程技术网

Javascript AJAX响应总是405

Javascript AJAX响应总是405,javascript,java,ajax,spring,spring-mvc,Javascript,Java,Ajax,Spring,Spring Mvc,我有一篇关于AJAX的帖子 $.ajax({ type: "POST", contentType: "application/json", url: "/rating/save", data: JSON.stringify(rating), dataType: "json", mimeType: "application/json", success: function (respon

我有一篇关于AJAX的帖子

$.ajax({
        type: "POST",
        contentType: "application/json",
        url: "/rating/save",
        data: JSON.stringify(rating),
        dataType: "json",
        mimeType: "application/json",
        success: function (responseData) {
            console.log(responseData);
            window.location.href = "/welcome"
        },
        error: function (responseData) {
            console.log(responseData);
        }
    });
控制器

@Controller
public class RatingController {
........
    @RequestMapping(value = "/rating/save",method = RequestMethod.POST)
        public ResponseEntity<Object> saveRating(@RequestBody List<RatingDTO> ratingDTO) {
            return new ResponseEntity<>(ratingService.save(ratingDTO),HttpStatus.OK);
        }
}

错误表明该方法是不允许的,但是来自该端点的服务工作得很好。

您应该通过
方法设置POST
属性:

$.ajax({
  method: "POST",
  ...

记录
ResponseEntity(ratingService.save(ratingDTO),HttpStatus.OK)
并检查值
尝试删除mimeType:“application/json”,你的类路径中有Jackson吗?同样的结果,可能是我使用的库的问题@TarasDanylchenko你用最新的jQuery试过了吗?是的,3.3.1是最新的jQuery版本,我用这个试过了,也得到了同样的结果result@TarasDanylchenko您的ajax看起来很好,因此,您可以检查服务器是否正确响应。尝试一些客户端、邮递员或curl:
curl-xpost
因此,问题出在服务器端。查看日志,也许你会发现问题。
$.ajax({
  method: "POST",
  ...