我正在向通用处理程序发出 ajax 请求,该处理程序Handler.ashx
将此请求转发到另一个域中的 REST 服务。Handler用于实现跨域调用。我在 Firefox 和 Chrome 中获取数据。但不在 Windows 7 上的 Safari 中(版本 5.1.7)
$.ajax({
url: 'Handler.ashx',
type: 'GET',
contentType: 'application/json; charset=utf-8',
dataType: 'json',
async: false,
timeout: 20000,
data: data,
success: function (received_data) {
// Process data
},
error: function (err) {
console.log(err);
}
});
我的Handler.ashx
代码:
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(new Uri("http://xxx.xxx.xx.xxx/MyWebService/Service.svc/DownloadFile"));
req.ContentType = "application/json; charset=utf-8";
req.Timeout = 60000;
using (WebResponse resp = req.GetResponse())
{
StreamReader reader = new StreamReader(resp.GetResponseStream());
string responceFromService = reader.ReadToEnd();
context.Response.ContentType = "application/json; charset=utf-8";
context.Response.Write(responceFromService);
}
我得到的错误是:
NETWORK_ERR: XMLHttpRequest Exception 101