Angular2: проблема с передачей заголовков в nodejs
У меня есть сервис nodeJS и приложение Angular2. когда я вызываю метод get, передавая заголовки в NodeJS, заголовки не приходят. Может ли кто-нибудь сказать мне, где я делаю это неправильно?
Примечание: при вызове той же службы путем передачи заголовка из Fiddler она работает нормально. Единственная проблема - это угловое приложение.
Что я уже пробовал:
пакет.в JSON
{
"имя": "SampleApp",
"версия": "1.0.0",
"файлы сценариев": {
"старт": "ТСК &&усилителя; одновременно \"ТК -з\" \"лайт-сервер\" ",
"lite": "lite-сервер",
"ТСК": "ВСК",
"ТСК п": "ТСК -ж"
},
"лицензии": [
{
"тип": "MIT",
"адрес": "https://github.com/angular/angular.io/blob/master/LICENSE"
}
],
"зависимости": {
"@угловое/общие": "~2.2.0",
"@угловое/компилятор": "~2.2.0",
"@угловое/ядра": "~2.2.0",
"@угловое/формы": "~2.2.0",
"@угловое/НТТР": "~2.2.0",
"@угловое/платформа-браузер": "~2.2.0",
платформа-браузера-динамический "@угловое/": "~2.2.0",
"@угловое/маршрутизатор": "~3.2.0",
"@угловое/обновить": "~2.2.0",
"угловой-в-памяти-веб-АПИ": "~0.1.15",
"загрузочный": "^3.3.7",
"ядро-Яш": "^2.4.1",
"отражать-метаданные": "^0.1.8",
"rxjs": "5.0.0-beta. 12",
"systemjs": "0.19.39",
"zone.js": "^0.6.25"
},
"devDependencies": {
"@видах/сердечник-Яш": "^0.9.34",
"@видах/узел": "^6.0.45",
"одновременно": "^3.0.0",
"lite-сервер": "^2.2.2",
"машинопись": "^2.0.3"
}
}
---------------------------
приложение.компонент.ТС
import { Component } from '@angular/core'; import { Http, Headers, RequestOptions, Response } from '@angular/http'; //Import RxJs required methods // import {Observable} from 'rxjs/Rx'; import {Observable} from 'rxjs/Observable'; import 'rxjs/add/observable/throw'; import {Observer} from 'rxjs/observer'; // import 'rxjs/add/operator/toPromise'; import 'rxjs/add/operator/map'; import 'rxjs/add/operator/catch'; @Component({ selector: 'my-app', templateUrl:'./app/app.component.html' }) export class AppComponent { firmID: string; flag: string; uKeys: string[]; uris: string[] = ["http://localhost:8080/api/asps","http://wd-dbn-boops004/api/asps"]; selectedUri: string; //hdr: Headers; hdrJson:Object; options: RequestOptions; constructor(private http: Http){ this.selectedUri = this.uris[0]; this.firmID="1"; this.flag="-1"; this.uKeys=["1405"]; // this.hdr = new Headers({'content-type': 'application/json'}); // this.hdr.append("auth-ticket","adafasf"); // this.hdr.append("Accept", "application/json"); // this.options = new RequestOptions({headers: this.hdr}); // this.hdrJson = JSON.stringify(this.hdr); } OnQuery(){ let hdr = new Headers({'content-type': 'application/json','auth-ticket':'abcdd'}); console.log("selected Uri: "+this.selectedUri+"; firmID: " + this.firmID + "; Flag: " + this.flag + "; Ukeys: " + this.uKeys); console.log("Calling service uri :"+this.selectedUri+"/"+this.firmID+"/"+this.uKeys); console.log("headers :"+ hdr); this.hdrJson = JSON.stringify(hdr); console.log(this.http.get(this.selectedUri+"/"+this.firmID+"/"+this.uKeys,{headers:hdr}) .map((res: Response) => res.json()) //.subscribe(res=>res.json())); // .toPromise() //.then(response => response.json().data) .catch(this.handleError)); } private handleError(error: any) { console.error('An error occurred', error); // for demo purposes only return error; } }