【发布时间】:2012-07-09 21:51:55
【问题描述】:
我创建了一个项目,它是一个 asp.net 项目,它有一个 Service1.asmx,我把这个项目托管到远程服务器上,就像一个子域 (myservice.test.com/Service1.asmx ) 并且我正在使用 jquery ajax 方法从 asp.net 应用程序调用此 Web 服务。此应用程序位于同一远程服务器上,当我调用 admin.test.com/Default.aspx(此页面使用 Web 服务 abow)时,我将其托管为子域(admin.test.com)我用 chrome 控制台查看了这个错误的错误,它说:*(Access-Control-Allow-Origin 不允许。)*4444
GET_CAT_ALL: function (userId, callback, callback_err) {
try {
$.ajax({
type: "POST",
url: myservice.test.com/Service1.asmx + "/GET_CAT_ALL",
data: "{userId:" + userId + "}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
if (msg.d == "0" || msg.d.length == 0 || msg.d == null) {
if (typeof callback == 'function') {
callback(null);
}
}
else if (msg.d <= 0) {
if (typeof callback_err == 'function') {
callback_err(msg.d, msg, 'GET_CAT_ALL');
}
}
else {
var _data = eval("(" + msg.d + ")");
if (typeof callback_err == 'function' && _data[0] != null && typeof _data[0].ErrorCode != 'undefined') {
callback_err(_data, msg, 'GET_CAT_ALL');
}
else if (typeof callback == 'function') {
callback(_data);
}
}
},
error: function (msg) {
if (typeof callback_err == 'function') {
callback_err(-1, msg, 'GET_CAT_ALL');
}
}
});
}
catch (err) {
if (typeof callback_err == 'function') {
callback_err(-2, err, 'GET_CAT_ALL');
}
}
},
【问题讨论】:
-
JSONP 如果你使用跨域也发布一些代码,否则随机建议会出现
标签: asp.net ajax web-services jquery