我正在使用sencha touch 2.1的移动web应用程序。目前我正在制作一个登录系统。对此,我正在使用用户名和密码从本地计算机向远程服务器发送ajax请求。但我不断收到此错误移动网络应用程序的访问控制 - 允许来源问题
XMLHttpRequest cannot load http://something.com/login.php?_dc=1362983327250. Origin http://dev.vclouds.com is not allowed by Access-Control-Allow-Origin.
在上面的错误http://dev.vclouds.com
是我localhost
。我以这种方式在我的apache配置中设置它。
这里是我的Ajax请求
Ext.Ajax.request({
url: 'http://something.com/beta/webservice/login.php',
method: 'post',
params: {
user_name: username,
user_password: password
},
success: function (response) {
var loginResponse = Ext.JSON.decode(response.responseText);
console.log(loginResponse);
if(loginResponse.success === "true") {
me.sessionToken = loginResponse.sessionToken;
me.signInSuccess();
} else {
me.signInFailure(loginResponse.message);
}
},
failure: function (response) {
me.sessionToken = null;
me.signInFailure('Login failed');
},
callback: function (opts, success, response) {
console.log('callback');
console.log(opts);
console.log(success);
console.log(response);
}
});
码我怎样才能解决这个问题?
UPDATE
我也试过JSONP如下
Ext.data.JsonP.request({ //<-- line 35
url: 'http://something.com/beta/webservice/login.php',
callbackKey: 'callback',
//method: 'post',
params: {
user_name: username,
user_password: password
},
callback: function (opts, success, response) {
console.log('callback');
console.log(opts);
console.log(success);
console.log(response);
}
});
但我收到此错误
Uncaught TypeError: Cannot call method 'request' of undefined Login.js:35
该链接不回答我的问题。 – 2619 2013-03-11 07:01:50
该链接*确实*回答这个问题。 – Quentin 2013-03-11 07:02:47
它是否也适用于sencha touch应用程序? – 2619 2013-03-11 07:03:32