我不知道如何将这个AngularJS $ http.get重写为Angular2:

$scope.toggle = function() {
 $http.get('http://example.com?operation=getEmployeeData', {
    params: {
      data: JSON.stringify({
        params: {
          firstName : 'John',
          lastName  : 'Doe',
          empType   : 'Administrative',
          orgUnit   : 'Management',
          lang      : 'Eng'
        }
      })
    }
  }).then(function(data) { $scope.staff = data }


具有参数的url如下所示:


  http://example.com?operation=getEmployeeData&data= {“ params”:{“ firstName”:“ John”,“ lastName”:“ Doe”,“ empType”:“ Administrative”,“ orgUnit”:“ Management”,“ lang”:“ Eng”}}


我如何在Angular2中做到这一点?
谢谢!

最佳答案

在Angular2中,Http.GET与AngularJS非常相似,但是要传递url参数,必须在URLSearchParams包内使用@angular/http
您想做什么:

let params: URLSearchParams = new URLSearchParams();
params.set("data",JSON.stringify({
        params: {
          firstName : 'John',
          lastName  : 'Doe',
          empType   : 'Administrative',
          orgUnit   : 'Management',
          lang      : 'Eng'
        }
      }));
//Make the call and return an observable
 return this.http.get(SomeVar.MY_URL, params)
      .toPromise()
      ...

关于javascript - Angular2 http.get从外部API,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42339371/

10-12 00:01
查看更多