Angularjs 在angular js中的DELETE ajax请求中发送JSON时出错,尽管它在chrome postman中工作正常

Angularjs 在angular js中的DELETE ajax请求中发送JSON时出错,尽管它在chrome postman中工作正常,angularjs,json,ajax,angularjs-http,Angularjs,Json,Ajax,Angularjs Http,我正在尝试在angular js中的DELETE ajax请求中发送JSON。它给出了500个内部服务器错误,尽管它在postman中运行良好。 我的代码 其中delete_task_url为levigo.com/public/dashboard/api/v1/checklist/4/tasks JSON 错误:“为foreach()提供的参数无效” 有一个微妙的区别。在Postmantasks的屏幕截图中是一个对象数组,但在Angular发送的JSON的屏幕截图中,tasks的子属性为0。

我正在尝试在angular js中的DELETE ajax请求中发送JSON。它给出了500个内部服务器错误,尽管它在postman中运行良好。

我的代码 其中delete_task_url为levigo.com/public/dashboard/api/v1/checklist/4/tasks

JSON

错误:“为foreach()提供的参数无效”


有一个微妙的区别。在Postman
tasks
的屏幕截图中是一个对象数组,但在Angular发送的JSON的屏幕截图中,
tasks
的子属性为
0
。你真的需要
{data:{data}}
吗?或者你可以只使用
{data:data}
?@lex:JSON附加的屏幕截图只是一个解析视图。。。else源代码视图是
{“data”:{“tasks”:[{“task_name”:“newtask 1”,“id”:26}]}
。我也尝试过使用
{data:data}
但是这会从JSON中删除数据,然后创建的JSON是
{“tasks”:[{“task_name”:“newtask 1”,“id”:26}]}
你可能需要调用JSON.stringify,因为它看起来你的数组正在转换为一个对象。问题是
内容类型
。我把它改成了“$http”({method:“DELETE”,url:DELETE_task_url,data:{data},headers:{'Content Type':'application/json'})`
var data = $scope.removeTaskList;
  
var delete_task_url = base_url + "checklist/"+id+"/tasks";
$http
    .delete(delete_task_url, {data:{data}})
    .success(function(data) {
        httpService.get(get_checklist_url,"")
            .then(function (result) {
                if (result.status == 200) {
                    console.log("task deleted");
            } else {
                toast('some error occured');
                console.log("some error occured");
            }
        })
    });