Angularjs $http.post用于web api

Angularjs $http.post用于web api,angularjs,post,asp.net-web-api,http-post,Angularjs,Post,Asp.net Web Api,Http Post,我在asp.net中有下面的控制器操作 [HttpPost] [Route("ReportProblem")] public IHttpActionResult ReportProblem(int BusinessID, int RoomID, int RoomFacilityID, int ComponentID, string[] BinImages, string ProblemDesc) { return Ok("Thank you for reporting the issue

我在asp.net中有下面的控制器操作

[HttpPost]
[Route("ReportProblem")]
public IHttpActionResult ReportProblem(int BusinessID, int RoomID, int RoomFacilityID, int ComponentID, string[] BinImages, string ProblemDesc)
{
    return Ok("Thank you for reporting the issue.");
}
现在,我想用angularjs发布如下。但它不起作用

$http.post('/api/room/ReportProblem?BusinessID=1' +
'&RoomID=1'+
'&RoomFacilityID=1' +
'&ComponentID=1' +
'&BinImages=null' +
'&ProblemDesc=eee',
{
    headers: {'Content-Type': 'application/x-www-form-urlencoded'
}
)
.success(function (response) {
    console.log(
});
您可以尝试以下方法:

var ReportProblemObject = {BusinessID: 1, RoomID: 1, RoomFacilityID: 1, ComponentID: 1, BinImages: null, ProblemDesc: 'eee'};

var payLoad = $httpParamSerializerJQLike(ReportProblemObject);
$http.post('/api/room/ReportProblem', payLoad, {
                headers: {
                    'Content-Type': 'application/x-www-form-urlencoded'
                }
            });

您可以这样尝试:

$http.post('/api/room/ReportProblem', 
{ BusinessID: 1,RoomID : 1,RoomFacilityID : 1}).success(function (res) { response = res; });

它不起作用,而且不够具体。在浏览器中打开F12开发者工具,单击“网络”选项卡,并观看正在拨打的电话(如果有)。服务器返回了什么?请指定您收到的http状态码。请停止向所有答案添加广告链接。感谢您的回答。我还有一个问题。我想以字符数组的形式发送binImages base64图像。我怎样才能做到这一点?问题是什么?发送数组的方式与发送其他参数的方式相同。
$http.post('/api/room/ReportProblem', 
{ BusinessID: 1,RoomID : 1,RoomFacilityID : 1}).success(function (res) { response = res; });