Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.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
Angularjs 安格拉斯和弹簧休息_Angularjs_Spring Mvc_Spring Rest - Fatal编程技术网

Angularjs 安格拉斯和弹簧休息

Angularjs 安格拉斯和弹簧休息,angularjs,spring-mvc,spring-rest,Angularjs,Spring Mvc,Spring Rest,我使用AngularJS将一个简单的表单发布到使用SpringBoot和Rest编写的API中。每个类都用@RestController注释 我的spring控制器方法如下: @RequestMapping(method = RequestMethod.POST) public ResponseEntity<String> create(@Valid @RequestBody Modality modality) { mService.save(modality);

我使用AngularJS将一个简单的表单发布到使用SpringBoot和Rest编写的API中。每个类都用@RestController注释

我的spring控制器方法如下:

@RequestMapping(method = RequestMethod.POST)
public ResponseEntity<String> create(@Valid @RequestBody Modality modality) {
      mService.save(modality);

      return ResponseEntity.status(HttpStatus.CREATED).body("");
}
当我使用angular提交表单时,我可以看到模态对象正在填充表单数据,但是当它到达spring控制器时,模态对象的所有属性都为null,因此,我ḿ 获取以下错误:

{"status":400, "error":"Badequest",
"exception":"org.springframework.http.converter.HttpMessageNotReadableException","message":"Required request body is missing: 
public org.springframework.http.ResponseEntity<java.lang.String>
cc.sporthub.controllers.ModalityController.create(cc.sporthub.models.Modality","path":"/v1/modality"}
{“status”:400,“error”:“Badequest”,
“异常”:“org.springframework.http.converter.httpmessagenoteradableexception”,“消息”:“缺少所需的请求正文:
public org.springframework.http.ResponseEntity
cc.sporthub.controllers.ModalityController.create(cc.sporthub.models.Modality,“路径”:“/v1/Modality”}

我做错了什么?

我认为这是因为您使用了小写的scope.modality

Javascript变量区分大小写


我认为您的问题是由于变量名使用data:$scope.Modality而不是data:$scope.modalityTry发送JSON:
data:JSON.stringify($scope.Modality)引起的;
我已经试过了,但还是出现了同样的错误…包含该值的对象是
scope.modity
。但是您正在发送
scope.modity
。您是对的…一个愚蠢的错误!
$scope.Modality = {id: null, name: '', active: ''}
$scope.submit = function() {
        $http({
            method: 'POST',
            headers : { 'Content-Type': 'application/json'},
            url: "http://localhost:8080/v1/modality",
            data: $scope.modality
        }).success(function(data) {
                console.log($scope.modality);
        });
}
{"status":400, "error":"Badequest",
"exception":"org.springframework.http.converter.HttpMessageNotReadableException","message":"Required request body is missing: 
public org.springframework.http.ResponseEntity<java.lang.String>
cc.sporthub.controllers.ModalityController.create(cc.sporthub.models.Modality","path":"/v1/modality"}