我刚刚在一个使用asp.net的网站上做了相当大的更新。在新的更新中,我更改了很多代码,所以我将jquery与asp.net web服务一起使用。我的许多用户在刷新浏览器中的所有缓存之前,都会遇到新的更新无法工作的问题。因为告诉每个人刷新缓存有很多工作,也许我可以在他们加载新的更新时强制刷新?
用户遇到问题的典型ajax调用是:
$.ajax({
type: "GET",
url: url,
dataType: "json", cache: false, data: "{}", contentType: "application/json; charset=utf-8"....在服务器机器上,我记录了这些错误,结果如下所示:
Error Message: There was no channel actively listening at 'http://www.domain.com/Service.svc/get?date=2010-01-12&_=1263327373122&{}'. This is often caused by an incorrect address URI. Ensure that the address to which the message is sent matches an address on which a service is listening."_=1263327373122“部分根本不应该出现在那里..当用户刷新他们的缓存时,它再次完美地工作。我如何解决这个问题?
发布于 2010-01-13 04:36:13
如果不想发送任何数据,只需省略data参数或将其更改为data: {} (不带引号)。它认为您想要发送字符串"{}"。
发送参数_是因为您指定了cache: false。
此外,我认为您不应该自己用参数‘构建’URL,并传递一个空的数据对象。jQuery会帮你做到这一点。
也就是说,不是
$.ajax({
type: "GET",
url: "http://mydomain/service?date=" + mydate,
data: {} });执行此操作
$.ajax({
type: "GET",
url: "http://mydomain/service", //this remains constant
data: {date: mydate} });https://stackoverflow.com/questions/2052143
复制相似问题