如何在Javascript中将参数函数调用到$ http get方法

时间:2016-05-30 00:40:16

标签: javascript angularjs json

我在stackoverflow中新来了。

我的代码有问题,我找不到解决方案,所以我决定在这里提问。

HTML

<body ng-app="app">
    <div ng-controller="ctrl">
    </div>

<script src="~/Scripts/angular.min.js"></script>
  

我包含了ng-app =&#34; app&#34;在我的身体里,我也安装了angularjs。

我在我的应用程序中添加了一个名为ang.js

的javascript文件

ang.js

var app = angular.module('app', [])
app.controller("ctrl", function ($http) {
    $http.get("url1")
    .success(function (response){
        console.log(response);
    })
    $http.get("url2", {
        params: {
            Id: response[0].key
        }
    .success(function (response2) {
        console.log(response2);
       })
    })
    })

我的问题在

.success(function (response){
        console.log(response);
    })

如何在第二个中调用此参数响应。

$http.get("url2", {
        params: {
            Id: response
        }

1 个答案:

答案 0 :(得分:1)

您需要在第一个成功处理程序中发出第​​二个请求,即

var promise = $http.get('url1').then(function(res1) {
    return $http.get('url2', {
        params: {
            Id: res1.data[0].key
        }
    }).then(function(res2) {
        console.log(res2.data);
        return res2.data;
    })
});

请注意,我已使用then而非deprecated success回调。