对于任何其他API,HttpClient返回始终为null

时间:2018-01-01 18:01:04

标签: angular rest typescript angular-httpclient

我刚刚使用angular / cli创建了一个Angular应用程序,并按照他们的教程进行操作。然后我决定使用observables和一个真正的rest API包含http get请求,并注意到angular总是变为null。我尝试了几个公共休息API(当我将URL放在浏览器中时它们会返回json对象)但是当我控制日志时返回的对象始终为null。这是我使用公共API的服务的最后一个代码:

import { Injectable } from '@angular/core';
   import { Observable } from 'rxjs/Observable';
   import { of } from 'rxjs/observable/of';
   import { HttpClient, HttpHeaders } from '@angular/common/http';
   import { catchError, map, tap } from 'rxjs/operators';

   @Injectable()
   export class myService {

   private apiURL= 'https://jsonplaceholder.typicode.com/users';
    constructor(private http: HttpClient) { }


    getUsers() {
      console.log('calling get!');
      this.http.get('https://jsonplaceholder.typicode.com/users').pipe(
              tap(users => console.log(users))).subscribe(p => {console.log(p);});
      console.log('calling get finish!');  
     }
    }

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

谢谢大家的答案!该问题似乎与我们用于测试呼叫的浏览器有关(Chrome Canary v65.0.3309.2禁用安全性以允许跨源请求)。 我们更改了配置以在其他浏览器中运行应用程序,现在HttpClient工作正常... -.-