#javascript #azure #http-headers #sencha-touch-2 #azure-mobile-services
#javascript #azure #http-заголовки #sencha-touch-2 #azure-mobile-services
Вопрос:
Итак, как я могу добавить аутентификацию заголовка в Ext.Azure.invokeApi()
запрос? Моей программе требуется аутентификация заголовка для доступа к пользовательскому api, потому что я установил разрешения на работу только для пользователей, прошедших проверку подлинности.
Ответ №1:
В текущей версии аутентификация заголовка не добавляется в API invoke, но ее легко добавить с помощью переопределения.
Взгляните на Ext.azure.Azure.getDefaultHeaders() — вы можете изменить его на следующее:
getDefaultHeaders : function() {
var headers = {
'X-ZUMO-APPLICATION' : this.getAppKey(),
'X-ZUMO-VERSION' : this.getUserAgentString()
};
var authorizedUser = Ext.azure.Authentication.getCurrentUser();
if (typeof authorizedUser !== 'boolean') {
headers['X-ZUMO-AUTH'] = authorizedUser.get('token');
}
return headers;
}
И это помогло бы. Я зарегистрирую ошибку о невозможности сделать это в текущей версии и постараюсь ее исправить в ближайшее время.
Чтобы создать переопределение, включите следующий код где-нибудь в свое приложение:
Ext.define('Ext.override.Azure', {
override : 'Ext.azure.Azure',
getDefaultHeaders : function() {
var headers = {
'X-ZUMO-APPLICATION' : this.getAppKey(),
'X-ZUMO-VERSION' : this.getUserAgentString()
};
var authorizedUser = Ext.azure.Authentication.getCurrentUser();
if (typeof authorizedUser !== 'boolean') {
headers['X-ZUMO-AUTH'] = authorizedUser.get('token');
}
return headers;
}
});
Комментарии:
1. Как мне добавить это переопределение в мое приложение? Нужно ли редактировать пакет Azure?
2. Спасибо! Это очень помогает. : D