Inscrever-se para observável está retornando indefinido

Então, eu estou tentando assinar um serviço simples que retorna dados de um arquivo JSON local.

Consegui fazer o serviço funcionar, posso desconectá-lo na função, mas quando assino o serviço no componente angular 2, ele sempre é indefinido. Não sei por que? Qualquer ajuda seria muito apreciada.

Serviço de API

export class ApiService {
   public data: any;

   constructor(private _http: Http) {
   }

   getData(): any {
       return this._http.get('api.json').map((response: Response) => { 
       console.log('in response', response.json()); //This logs the Object
       this.data = response.json();
       return this.data;
   })
   .catch(this.handleError);
   }
}

Componente

export class AppComponent {
   public data: any
   public informationData;

   constructor(private _api: ApiService) {}

   public ngOnInit(): void {
      console.log(this.getDataFromService()); // This return undefined
   }

   public getDataFromService() {
      this._api.getData().subscribe(response => {
          this.informationData = response;
          return this.informationData;
      });
   }
}

questionAnswers(5)

yourAnswerToTheQuestion