#angular #api #rxjs #httprequest
#angular #API #rxjs #httprequest
Вопрос:
createToken() {
this._tokenService
.getAuth(this.userId, this.token)
.subscribe(res =>
{},
error => {
console.log(error);
});
}
getAuth(upn, token) {
var param = {
Upn: upn,
Token: token
};
console.log(param);
return this._http.post(
this.REST_API_ADDR "auth",
param,
this.getAuthRequestHeader()
);
}
getAuthRequestHeader() {
console.log("header");
const authHeaders = new HttpHeaders({
'Content-Type':'application/json',
});
return { headers: authHeaders };
}
Попробуйте getAuth
выполнить запрос на сохранение токена. Запрос не вызывает API и выдает ошибку.
Ошибка типа: не удается прочитать свойства неопределенной (чтение «длины») в HttpHeaders.push../node_modules/@angular/common/fesm5/http.js.HttpHeaders.applyUpdate (http.js:199) в http.js:170 в Array.forEach () в HttpHeaders.push../node_modules/@angular/common/fesm5/http.js.HttpHeaders.init (http.js:170) в HttpHeaders.push../node_modules/@angular/common/fesm5/http.js.HttpHeaders.forEach (http.js:235) в Observable._subscribe (http.js:1435) в Observable.push../node_modules/rxjs/_esm5/internal/Observable.js.Observable ._trySubscribe (Observable.js:42) в Observable.push../node_modules/rxjs/_esm5/internal/Observable.js.Observable.subscribe (Observable.js:28) в MapOperator.push../node_modules/rxjs/_esm5/internal/operators/map.js.MapOperator.call (map.js:18) в Observable.push../node_modules/rxjs/_esm5/internal/Observable.js.Observable.subscribe (Observable.js:23)
Не могли бы вы сказать мне, какую часть проверять при возникновении этой ошибки? Кроме того, если вы знаете причину ошибки и как ее устранить, пожалуйста, дайте мне знать.
Комментарии:
1. каково значение «токена» и «upn»
Ответ №1:
Ошибка описана и устранена здесь: https://github.com/angular/angular/issues/18743#issuecomment-367742057
По сути, ваш заголовок имеет неопределенное / нулевое значение. Вы должны проверить параметр заголовка, который вы передаете в запрос.