(Spring MVC的)如何从REST API

问题描述:

多个对象,我目前使用angularJS作为我的前端,而我传递REST调用Spring MVC中删除多个对象(Spring MVC的)如何从REST API

在我的角度的功能,我将返回 的方法 “本地主机:9000/API /部门/ deleteSelectedDepartments/1517,1518”

deleteSelectedDepartments(selectedDepartments: any): Observable<ResponseWrapper> { 

    var id = ""; 
    var index = 0; 

    for(const key in selectedDepartments) { 
     if(index == (Object.keys(selectedDepartments).length - 1)) { 
      id += key; 
     } else { 

      id += key; 
      id += ","; 
     } 
     index++; 
    } 

    return this.http.delete(`${this.resourceDeleteDepartmentsUrl}/${id}`); 
} 

1517和1518代表部门的ID。

然而,我“M个接收我的Spring MVC和错误,我不完全知道如何正确地接收的对象。

目前在我的DepartmentResource.java(Spring MVC的)

@DeleteMapping("/departments/deleteSelectedDepartments/{ids}") 
@Timed 
public ResponseEntity<Void> deleteSelectedDepartments(@PathVariable String ids) { 
    log.debug("REST request to delete Department : {}", ids); 
    return ResponseEntity.ok().headers(HeaderUtil.createEntityDeletionAlert(ENTITY_NAME, "blank")).build(); 
} 

我收到错误消息是错误404没有找到。

DELETE http://localhost:9000/api/departments/deleteSelectedDepartments/1589,1590 404 (Not Found) 

如果有一个更好的方式去做事,请指教!谢谢!

+0

你能告诉你的控制器类 – shazin

+0

HI @shazin的顶部,我已经包括了整个功能。我很抱歉,如果我的做事方式不是很规范,刚开始的时候 – DoubleClickOnThis

您的映射错误。你有什么不是请求参数(该URL将是/api/departments/deleteSelectedDepartments?departmentIds=1517,1518)。

你有什么是路径变量:

@DeleteMapping("/departments/deleteSelectedDepartments/{departmentIds}") 
@Timed 
public ResponseEntity<Void> deleteSelectedDepartments(@PathVariable String departmentIds) { 
+0

我的歉意,我再次尝试过,错误消失了,谢谢! – DoubleClickOnThis