1

Я работаю над одностраничным приложением, используя AngularJs. Мое приложение использует маркер заголовка авторизации JWT для авторизации. У меня есть перехватчик agularJs, который добавляет заголовок авторизации для каждого исходящего вызова api из моего приложения SPA.Перехват исходящих вызовов Kendo Grid для добавления заголовка автозавершения JWT

Недавно я добавил пользовательский интерфейс Kendo в приложение, и я заметил, что вызовы api, сделанные Kendo Grid, не проходят через мой Angular-перехватчик.

Есть ли чистый способ перехватить все входящие вызовы API из компонентов KendoUi, чтобы я мог добавить токен заголовка авторизации?

ответ

1
function setAuthHeader(req) { 

     var token = tokenStoreService.getToken(); 
     if (token) { 
      req.setRequestHeader('Authorization', 'Bearer ' + token); 
     } 
    } 

    function setGridAuthorization(dataSource) { 
     if (dataSource && dataSource.transport && dataSource.transport.options) { 
      var opt = dataSource.transport.options; 
      if (opt.read) opt.read.beforeSend = setAuthHeader; 
      if (opt.update) opt.update.beforeSend = setAuthHeader; 
      if (opt.destroy) opt.destroy.beforeSend = setAuthHeader; 
      if (opt.create) opt.create.beforeSend = setAuthHeader; 

     } else if (dataSource && dataSource.transport) { 
      var tran = dataSource.transport; 
      if (tran.read) tran.read.beforeSend = setAuthHeader; 
      if (tran.update) tran.update.beforeSend = setAuthHeader; 
      if (tran.destroy) tran.destroy.beforeSend = setAuthHeader; 
      if (tran.create) tran.create.beforeSend = setAuthHeader; 
     } 
    } 
+0

Что касается экспортной версии на стороне сервера? Есть ли чистый способ перехватить все исходящие вызовы «Proxy Excel Export» из компонентов KendoUi, чтобы я мог добавить токен заголовка авторизации? заранее спасибо – sepehr

Смежные вопросы