Sencha Touch 2 如何获取响应标头
Posted
技术标签:
【中文标题】Sencha Touch 2 如何获取响应标头【英文标题】:Sencha Touch 2 How to get response headers 【发布时间】:2013-06-21 01:31:27 【问题描述】:我进行 Ajax 调用:
Ext.Ajax.request(
url : 'http://apps.dhis2.org/demo/dhis-web-commons-security/login.action',
callbackKey : 'callback',
method : 'POST',
params :
j_username : username,
j_password : password
,
withCredentials : true,
useDefaultXhrHeader : false,
success : function(response)
var text = response.responseText;
Ext.Msg.alert('Success', "Success login", Ext.emptyFn);
,
failure : function(response)
var text = response.responseText;
Ext.Msg.alert('Error', "Failure login", Ext.emptyFn);
);
有响应头:
Connection:Keep-Alive
Content-Length:0
Content-Type:text/plain
Date:Fri, 21 Jun 2013 01:23:51 GMT
Keep-Alive:timeout=5, max=100
Location:http://apps.dhis2.org/demo/
Set-Cookie:JSESSIONID=2E5D7C7235BE37150F1FE7B30EA0244D; Path=/demo/; HttpOnly
Vary:cookie
我怎样才能获得 Location 标头?
当我尝试这样做时:
Ext.Ajax.on('requestcomplete',
function(conn, response, options, eOpts)
var location = options.headers['Location'];
Ext.Msg.alert('Success', location, Ext.emptyFn);
, this);
我有错误
无法读取未定义的属性“位置”
【问题讨论】:
【参考方案1】:寻找解决方案:
Ext.Ajax.request(
url : 'http://apps.dhis2.org/demo/dhis-web-commons-security/login.action',
method : 'POST',
params :
j_username : username,
j_password : password
,
withCredentials : true,
useDefaultXhrHeader : false,
success : function(response)
var Location = response.getResponseHeader('Location');
,
failure : function(response)
Ext.Msg.alert('Error', "Failure login", Ext.emptyFn);
);
【讨论】:
以上是关于Sencha Touch 2 如何获取响应标头的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Sencha-Touch2.0 的地图中获取当前位置的标记
如何在 Sencha Touch Ajax 请求中发现 302 响应
Sencha Touch 2:如何从面板获取 HTML 以及输入值