93

有谁知道为什么这不起作用?

$http
    .get('accept.php', {
        source: link,
        category_id: category
    })
    .success(function (data, status) {
        $scope.info_show = data
    });

这确实有效:

$http
    .get('accept.php?source=' + link + '&category_id=' + category)
    .success(function (data, status) {
        $scope.info_show = data
    });
4

2 回答 2

191

调用中的第二个参数get是一个配置对象。你想要这样的东西:

$http
    .get('accept.php', {
        params: {
            source: link,
            category_id: category
        }
     })
     .success(function (data,status) {
          $scope.info_show = data
     });

有关详细信息,请参阅http://docs.angularjs.org/api/ng.$http的参数部分

于 2013-06-20T22:55:55.683 回答
3

$http.getdocs中,第二个参数是一个配置对象:

get(url, [config]);

GET执行请求的快捷方式。

您可以将代码更改为:

$http.get('accept.php', {
    params: {
        source: link, 
        category_id: category
    }
});

或者:

$http({
    url: 'accept.php', 
    method: 'GET',
    params: { 
        source: link, 
        category_id: category
    }
});

附带说明一下,由于Angular 1.6 :.success 不应再使用,请.then改用:

$http.get('/url', config).then(successCallback, errorCallback);
于 2017-04-07T09:51:39.927 回答