import * as ng from 'angular2/core';
import { Http } from 'angular2/http';

@ng.Component({
  selector: 'fetch-data',
  template: require('./fetch-data.html')
})
export class FetchData {
    public forecasts: WeatherForecast[];

    constructor(http: Http) {
        // TODO: Switch to relative URL once angular-universal supports them
        // https://github.com/angular/universal/issues/348
        http.get('http://localhost:5000/api/SampleData/WeatherForecasts', {
            headers: <any>{ Connection: 'keep-alive' } // Workaround for RC1 bug. TODO: Remove this after updating to RC2
        }).subscribe(result => {
            this.forecasts = result.json();
        });
    }
}

interface WeatherForecast {
    dateFormatted: string;
    temperatureC: number;
    temperatureF: number;
    summary: string;
}

import * as ng from 'angular2/core';
import { Http } from 'angular2/http';

@ng.Component({
  selector: 'fetch-data',
  template: require('./fetch-data.html')
})
export class FetchData {
    public forecasts: WeatherForecast[];

    constructor(http: Http) {
        // Workaround for RC1 bug. This can be removed with ASP.NET Core 1.0 RC2.
        let isServerSide = typeof window === 'undefined';
        let options: any = isServerSide ? { headers: { Connection: 'keep-alive' } } : null;
        
        // TODO: Switch to relative URL once angular-universal supports them
        // https://github.com/angular/universal/issues/348
        http.get('http://localhost:5000/api/SampleData/WeatherForecasts', options).subscribe(result => {
            this.forecasts = result.json();
        });
    }
}

interface WeatherForecast {
    dateFormatted: string;
    temperatureC: number;
    temperatureF: number;
    summary: string;
}

Clean up RC1 bug workaround
Clean up RC1 bug workaround
