对于任何休息 API,HttpClient get return 始终为空



我刚刚使用angular/cli创建了一个Angular应用程序,并按照他们的教程进行操作。然后我决定使用可观察量和真正的 rest API 包含 http get 请求,并注意到 angular 总是变得空。我尝试了几个公共 rest API(当我将 URL 放入浏览器时,它们确实会返回 json 对象(,但是当我控制台日志返回的对象时,它总是为空。这是我使用公共 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!');  
     }
    }

有什么想法吗?

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

最新更新