私は現在tslintに問題があり、誰かが私を正しい方向に向けることを望んでいました。
Angular 2フレームワークで提供されているHTTPを使用してHTTP GETリクエストを送信しようとしています。この要求で、私はcontent-typeとbearer authentication tokenを指定しなければなりません。
私のコードの例:
let headers = new Headers();
let authToken = this._user.getUser().JWT;
headers.append('Content-Type', 'application/json');
headers.append('Authorization', `Bearer ${authToken}`);
let options = new RequestOptions({ headers: headers });
this._http.get('http://' + url '/', options)
.timeout(3000)
.subscribe(
(res) => {
これはうまくいきますが、tslintは次のように文句を言っています。
"TS2345:タイプ '{headers:Headers;}'の引数は、タイプ 'RequestOptionsArgs'のパラメータに割り当てることはできません。プロパティ 'headers'のタイプは互換性がありません。この名前のプロパティは存在しますが、関連性はありません。プロパティ 'keys'はタイプ 'Headers'にありません。
サポートに感謝します。
ヘッダを更新する必要があります。
let headers = {headers: new HttpHeaders({ 'Content-Type': 'application/x-www-form-urlencoded'})};
Angular 5用の更新
import { RequestOptions } from '@angular/http';
私は正しい答えからのコメントでこれを見つけたので、これが誰かに役立つのであれば、頑張ってください。
//コンテンツタイプJsonのヘッダの例
import { Http, Headers, RequestOptions } from '@angular/http';
const Url = 'http://localhost:3000/';
const headers = new Headers;
const body = JSON.stringify({
title: "data"
});
headers.append('Content-Type', 'application/json');
this.http.post(Url, body, { headers: headers })
.pipe(map((res => res)));