如何使用带有AngularJS的$ http.post将URL参数发送到我的服务器?

时间:2014-03-18 01:11:44

标签: angularjs

我有以下代码:

$http.post('/api/City?cityId=' + $scope.config.cityId)

这可以工作并将预期的URL发送到服务器。

现在我想在URL中添加更多信息以发送更多信息。有没有办法可以在对象中定义详细信息,例如cityId并将其发送?请注意,我确实尝试过:

$http.post('/api/City', {
             params: {
                 cityId: $scope.config.cityId
             }
})

这具有将包含cityId的JSON对象发送到服务器的效果,这不是我想要的,因为我的服务器期望这样:

    [HttpPost]
    [ActionName("City")]
    public HttpResponseMessage City(int cityId, int locId, testId)

1 个答案:

答案 0 :(得分:1)

params对象是$ http.post函数的第三个参数的属性,而不是第二个参数。

http://docs.angularjs.org/api/ng/service/ $ HTTP#交

您也可以使用长版

$http({
  method: 'POST',
  url: '/api/City'
  params: {...}
});