Angular добавляет строку 'bearer' в заголовок аутентификации после сборки - PullRequest
1 голос
/ 23 мая 2019

На моем сервере (Nodejs + Express) у меня есть защищенные маршруты с токеном JWT.В среде разработки заголовок HTTP-авторизации в запросе выглядит следующим образом:

Authorization: JWT token_string

После того, как я создаю угловое приложение, встроенное приложение по какой-то причине добавляет в заголовок «Носитель»:

Authorization: Bearer JWT token_string

Запрос:

 addTemplate(template: ITemplate): Observable<ISuccessMsgResponse> {
    return this.http.post<ISuccessMsgResponse>(`${this.ULR}template`, template, {
      headers: new HttpHeaders({
        'Authorization': this.token.getToken()
      })
    });
  }

Узел:

.post(passport.authenticate('jwt', {session: false}), (req, res) => {
     // Code to execute
}

, паспорт:

module.exports = function(passport) {
    let opts = {};
    opts.jwtFromRequest = ExtractJwt.fromAuthHeaderWithScheme('jwt');
    opts.secretOrKey = config.secret;
    passport.use(new JwtStrategy(opts, (jwtPayload, done) => {
        User.getUserById(jwtPayload._id, (err, user) => {
            if(err) {
                return done(err, false)
            }
            if(user) {
                return done(null, user)
            } else {
                return done(null, false)
            }
        })
    }))
}

Если я пытаюсь выполнить запрос с тем же форматом заголовка авторизации, что и в разработке, все работает нормально,Таким образом, проблема заключается во встроенной версии Angular, которая добавляет «Bearer» в заголовок авторизации.Кто-нибудь знает, почему это происходит и как я могу это исправить?

...