那么如何在Ext.Azure.invokeApi()
请求中添加标头身份验证?我的程序需要头部身份验证才能访问自定义API,因为我已将操作权限设置为仅经过身份验证的用户。
答案 0 :(得分:1)
在当前版本中,标题auth未添加到调用API中 - 但它很容易通过覆盖添加。
看看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;
}
});