angular - अनुरोध प्राप्त करने वाले कोण 2 पर हेडर सेट करें




get header (2)

मैं उपयोगकर्ताओं को एक एपीआई के लिए प्रमाणीकृत करने के लिए एक GET अनुरोध पर एक प्राधिकरण हैडर सेट करने का प्रयास करता हूं। मैं कोणीय 2 आरसी 1 का उपयोग कर रहा हूँ (I'am कुल शुरुआत)।

getTest(){
    let authToken = localStorage.getItem('auth_token');
    let headers = new Headers({ 'Content-Type': 'application/json' });
    headers.append('Authorization', `Bearer ${authToken}`);

    let options = new RequestOptions({ headers: headers });
    return this._http
      .get(this._url,options)
      .map(res => console.log(res));
  }

मैं अपने बैकएंड में कॉरस को अनुमति देता हूं

header("Access-Control-Allow-Origin: *");
header("Access-Control-Request-Headers: Content-Type, Authorization");

मेरा कंसोल:

विकल्प API / userProfile /

XMLHttpRequest लोड नहीं कर सकता / userProfile /। प्रीफलाइट के लिए प्रतिक्रिया में अवैध HTTP स्थिति कोड 406 है

मेरा अनुरोध हैडर

कोई उपाय ?


मुझे लगता है कि 406 स्थिति कोड के कारण आपको Accept हेडर की आवश्यकता है ...

let authToken = localStorage.getItem('auth_token');
let headers = new Headers({ 'Accept': 'application/json' });
headers.append('Authorization', `Bearer ${authToken}`);

let options = new RequestOptions({ headers: headers });
return this._http
  .get(this._url,options)
  .map(res => console.log(res));

यह आपको सर्वर को यह बताने की अनुमति देता है कि आपको प्रतिक्रिया में कौन सी सामग्री प्रकार की उम्मीद है ...

Content-Type हेडर आपके अनुरोध में भेजे गए सामग्री के प्रकार को निर्दिष्ट करने के बजाय है। आपके मामले में, कोई सामग्री नहीं है ...


autorization =  { Authorization: 'Token adfasdfadf651f65asd1f65asdf' }

this.http.get(url, { headers: autorization})




cors