Javascript 角度集成-HTTP客户端

Javascript 角度集成-HTTP客户端,javascript,json,angular,rest,http,Javascript,Json,Angular,Rest,Http,我不确定如何将restful API与HTTP Angular客户端集成,这是我的HTTP Angular客户端实现: getList(): Promise<any> { this.http.get<any>(this.url).toPromise() .then( data => { console.log(data); } ); 尝试为您的API调用使用服务,例如apiService,然后在您想要的每个组件中使用您的服务。此外,建议使用可

我不确定如何将restful API与HTTP Angular客户端集成,这是我的HTTP Angular客户端实现:

getList(): Promise<any> {
this.http.get<any>(this.url).toPromise()
  .then(
  data =>  {
    console.log(data);
  }
);

尝试为您的API调用使用服务,例如apiService,然后在您想要的每个组件中使用您的服务。此外,建议使用可观测值而不是承诺。那么,试试这样的方法:

api.service.ts

从'@angular/core'导入{Injectable};
从'@angular/common/http'导入{HttpClient};
@注射的({
providedIn:'根'
})
出口级服务{
专用REST_API_服务器=”http://localhost:3000";
构造函数(私有http:HttpClient){}
getList():承诺{
返回this.http.get(this.url);
}
}
应用程序组件.ts

从'@angular/core'导入{Component,OnInit};
从“../api.service”导入{ApiService};
@组成部分({
选择器:“应用程序主页”,
templateUrl:“./home.component.html”,
样式URL:['./home.component.css']
})
导出类HomeComponent实现OnInit{
公开名单:任何;
构造函数(私有apiService:apiService){}
恩戈尼尼特(){
this.apiService.getList().subscribe((数据:any[])=>{
控制台日志(数据);
这个列表=数据;
})  
}
}

检查此项。谢谢@aviboy2006它帮助了..:DHey@ng hobby,我的angular应用程序中已经有一个服务,在我的应用程序的前一个版本中,我使用了Observables,问题是,我有必要更改我的rest API响应,在我的API返回列表之前,但现在返回了上面的映射我发布了我的API JSON示例,就像你发布的那样,它将不起作用,因为数据是一个包含对象的对象,在第二个对象中有一个数组listOk,所以有什么问题?在您的组件中,您无法通过
data.eeeeee
获取内部对象,例如
console.log(data.eeeeee)
或获取数组并执行您想要的任何过程。如果您认为您的数据将有更多的转换,您可以使用第二个服务作为工厂,并在那里进行处理
{
    "eeeeee": {
        "qqq": [
            {
                "aaa": "fff",
                "zzz": "bbb",
                "yyy": "mmm",
                "xxx": "nnn"
            },
            {
                "aaa": "aaa",
                "zzz": "zzzz",
                "yyy": "yyyy",
                "xxx": "ccc"
            }
        ]
    }
}