Я только что создал образец приложения в соответствии с jhon papa пример (программа быстрого запуска). я разработал класс обслуживания, чтобы получить данные в формате JSON с моей службы отдыха http://localhost:8081//Myserver/rest/herosAngular2 rest calls in background
import { Injectable } from '@angular/core';
import { Http, Response , Headers} from '@angular/http';
import 'rxjs/add/operator/toPromise';
import { Hero } from './hero';
import { Code } from './code';
import { HEROES } from './mock-heroes';
@Injectable()
export class HeroService {
constructor(private http: Http) { }
private heroesUrl = 'http://localhost:8081//Myserver/rest/heros'; // URL to web api
getHeroes() {
return this.http.get(this.heroesUrl)
.toPromise()
.then(
response => response.json() as Hero[])
.catch(this.handleError);
}
getHero(id: number) {
return this.getHeroes()
.then(heroes => heroes.find(hero => hero.id === id));
}
private handleError(error: any) {
console.error('An error occurred', error);
return Promise.reject(error.message || error);
}
}
класс обслуживания работает отлично и герои, перечислены в пользовательском интерфейсе, а также (просто забыть о КРОСЕ orgin проблемы здесь). Но одна вещь, которую я заметил здесь, остальная связь с http://localhost:8081//Myserver/rest/heros напрямую отправляется из браузера (я вижу ее на вкладке в сети инструмента разработчика).
В соответствии с моим приложением он не должен отправлять браузер, вместо этого он должен обрабатываться как классы бэкэнд-бобов в JSF, а затем передавать данные в соответствующий компонент. Я верю, что это решит мою проблему CROS orgin. Доза Angular2 имеет такой вариант? Пожалуйста, предложите правильный способ его достижения.
- Спасибо за ур быстрый ответ, пожалуйста прояснить мои вопросы. –
- Будут ли обработаны все другие компоненты WebWorker? –
Я не много сделал, но AFAIK поток пользовательского интерфейса работает только с рендерингом и всеми другими прогонами кода в WebWorker. Данные привязки и события передаются между потоком пользовательского интерфейса и потоком WebWorker (все полностью прозрачным). –