Tia*_*ago 4 javascript ajax angularjs
在我的 Angular 应用程序中,我需要通过$http.delete此路由发送请求/projects/:id/activityTypes(注意它不以活动类型 ID 结尾)并传递以下格式的正文:
[{"id": 2}]
Run Code Online (Sandbox Code Playgroud)
这是为了允许通过发送数组内的多个对象来进行批量删除操作。
使用 Rest Web 服务客户端测试上面的路由,我得到一个200, OK状态,因此该路由已经实现并且工作正常,我只需要在我的 Angular 应用程序中实现它。
现在,我检查了上一篇文章,其中有一个非常相似的问题,并了解到 Angular$http.delete默认情况下不会在请求中发送正文,但是:
[它]确实允许我们提供一个配置对象作为第二个参数,通过它我们可以访问“data”属性。
所以我尝试了建议的方法并在我的请求中发送了一个配置对象:
return $http.delete('projects/' + projectID + '/activityTypes', {data: [{id: 2}]})
Run Code Online (Sandbox Code Playgroud)
然而,它不起作用。看起来虽然我发送了这个配置对象,但我仍然没有发送正文。
我怎样才能真正将尸体传递到我的$http.delete路线上?
编辑:这是当我发送上面的请求时服务器正在记录的内容$http.delete:
数据似乎已发送,但我收到此控制台错误,但在使用 Rest 客户端时未收到此错误:
Object {data: "Json not valid to remove activity type from Project", status: 400, config: Object, statusText: "Bad Request"}
Run Code Online (Sandbox Code Playgroud)
    小智 6
尝试这个:
$http({
            method: 'DELETE',
            url: 'projects/' + projectID + '/activityTypes',
            data: [{id: 2}]},
            headers: {
                'Content-type': 'application/json;charset=utf-8'
            });
Run Code Online (Sandbox Code Playgroud)
        |   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           2804 次  |  
        
|   最近记录:  |