Qadeer Ahmed Khan Ответов: 0

Ануглар 7 С.Объем сердечника 2.0


Привет, я пытаюсь аутентифицировать веб-службу .net core через приложение anuglar 7. Я пытался пройти мимо
application/json
но по какой - то причине запрос не поступает в службу.

public async Task Invoke(HttpContext context)
        {  
            string authHeader = context.Request.Headers["Authorization"];
            if (!string.IsNullOrEmpty(authHeader))
            {
                var secretKey = Startup.AppSettings.Secret;
                var signingKey = new SymmetricSecurityKey(Encoding.ASCII.GetBytes(secretKey));
                List<SymmetricSecurityKey> keys = new List<SymmetricSecurityKey>();
                keys.Add(signingKey);

                try
                {
                    ValidateAndDecode(authHeader, keys);
                    await _next.Invoke(context); 
                }
                catch (Exception ex)
                {
                    context.Response.StatusCode = 401;
                    await context.Response.WriteAsync(ex.Message);
                }
            } 
        }


intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {

        const authReq = request.clone({
            headers: new HttpHeaders({
                //'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8'
                'Content-Type': 'application/json'
            })
          });
        
          console.log('Intercepted HTTP call', authReq);
        
          return next.handle(authReq);
       
    }


запрос принимается, когда я отправляю заголовки как
'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8'

но измените его на
'Content-Type': 'application/json'

и сервис перестает получать запрос от клиента

Что я уже пробовал:

intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {

       const authReq = request.clone({
           headers: new HttpHeaders({
               //'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8'
               'Content-Type': 'application/json'
           })
         });

         console.log('Intercepted HTTP call', authReq);

         return next.handle(authReq);

   }


Добавлены заголовки, но не работают

Safeena Shabeer

Вы настроили CORS в своем сервисном приложении?

Christian Graus

Откуда берется эта функция видео, это какая-то нестандартная авт промежуточное программное обеспечение? Звонок дошел до вашего контроллера?

Qadeer Ahmed Khan

Спасибо. Да, это сработало после настройки CORS.

0 Ответов