user1692333
user1692333

Reputation: 2597

How to set header for HTTP in Angular2?

So basically I need to add custom auth header to all requests referred to API. In constructor I want to add this header and then in the class methods just use this.http

import { Injectable } from '@angular/core';

import { Config, Events } from 'ionic-angular';

import { Http } from '@angular/http';


@Injectable()

export class APIRequest {

    constructor (
        private http: Http,
        private config: Config,
    ) { 
        this.http.headers.append('My-Custom-Header','MyCustomHeaderValue');
    }
}

Upvotes: 1

Views: 7904

Answers (1)

mayur
mayur

Reputation: 3618

I use common fuction this way for headers

let method = 'POST';

let requestOptions: RequestOptions = new RequestOptions({
headers: this.jsonHeaders(),
method: method
});

jsonHeaders() // Function

public jsonHeaders(): Headers {
let headers: Headers = new Headers();
headers.append('Content-Type', 'application/json; charset=utf-8');
headers.append("Cache-Control", "no-cache");
headers.append("Cache-Control", "no-store");
headers.append("If-Modified-Since", "Mon, 26 Jul 1997 05:00:00 GMT");

if(this.token) {
headers.append('Authorization', 'Bearer ' + this.token);
}

return headers;
}

HTTP Request

let url = '/login'
this.http.request(url, requestOptions)

Upvotes: 2

Related Questions