Angular2/Http (POST) - Header
Ich bin nicht in der Lage zu ändern, den Header, wenn eine POST-Anforderung. Ich habe versucht, ein paar Dinge:
Einfach Klasse:
export class HttpService {
constructor(http: Http) {
this._http = http;
}
}
Habe ich versucht:
testCall() {
let body = JSON.stringify(
{ "username": "test", "password": "abc123" }
)
let headers = new Headers();
headers.append('Content-Type', 'application/json'); //also tried other types to test if its working with other types, but no luck
this._http.post('http://mybackend.local/api/auth', body, {
headers: headers
})
.subscribe(
data => { console.log(data); },
err => { console.log(err); },
{} => { console.log('complete'); }
);
}
2:
testCall() {
let body = JSON.stringify(
{ "username": "test", "password": "abc123" }
)
let headers = new Headers();
headers.append('Content-Type', 'application/json'); //also tried other types to test if its working with other types, but no luck
let options = new RequestOptions({
headers: headers
});
this._http.post('http://mybackend.local/api/auth', body, options)
.subscribe(
data => { console.log(data); },
err => { console.log(err); },
{} => { console.log('complete'); }
);
}
keiner der beiden arbeiten. Ich habe nicht vergessen zu importieren einer der Klassen.
Ich bin mit Google Chrome. Also ich check das 'Network' - tab, meine bitte ist es, und es sagt, dass mein Content-Type ist text/plain.
Ist das ein bug oder mache ich etwas falsch?
UPDATE
Ich vergaß zu importieren die Header-Klasse aus Angular2/http:
import {Headers} from 'angular2/http';
InformationsquelleAutor der Frage Angelo A | 2016-01-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Denke ich bist du mit dem HTTP-Unterstützung von Angular2 der richtige Weg. Siehe diese arbeiten plunkr: https://plnkr.co/edit/Y777Dup3VnxHjrGSbsr3?p=preview.
Vielleicht haben Sie vergessen, zu importieren
Headers
Klasse. Ich habe diesen Fehler vor einiger Zeit und es gab keine Fehler in der JavaScript-Konsole, aber den Header habe ich versucht zu setzen, waren nicht wirklich festgelegt. Zum Beispiel in Bezug auf dieContent-Type
header hatte ichtext/plain
stattapplication/json
. Sie können reproduzieren, dies in der plunkr ich Ihnen zur Verfügung gestellt durch KommentareHeaders
im Importe...Hier ist eine komplette funktionierende Beispiel (Importe im Lieferumfang enthalten):
Hoffe es hilft dir,
Thierry
InformationsquelleAutor der Antwort Thierry Templier