ios Safari 6中的Ajax post请求无效
升级到iOS6.0版本后,ajax登录页面停止工作。 它看起来像jquery $ .ajax发出的ajax发布请求,即使在添加随机查询字符串参数并将Cache-control设置为“no-cache”(这些发现在网络上作为缓存问题的解决方案)之后,它也会缓存在safari中。 首次登录尝试正常工作,但在第二次登录请求浏览器注销后,不会从服务器获取任何响应主体。 只有标题。
IOS 6 GM和5版本以及所有桌面浏览器也一样。
有任何想法吗?
我刚刚阅读了这篇文章,看起来与您的问题有关。 这似乎是苹果在iOS6中对Safari的“优化”。
这个主题在这里还包含很多细节:iOS 6上的Safari缓存$ .ajax结果吗?
但是,还有一点需要注意,以上内容并未涉及。
有一个对WCF有用的评论,它也适用于ASP.NET MVC应用程序和SetCacheability。 我建议这些调用仅限于非GET请求,以避免在GET上丢失缓存的好处。
我使用一个控制器基类,所有的控制器都继承了基于很多原因,这很好,因为我的Initialize覆盖可以处理设置我的缓存标题。
public class SmartController : Controller
{
...
public HttpContextBase Context { get; set; }
protected override void Initialize(System.Web.Routing.RequestContext requestContext)
{
Context = requestContext.HttpContext;
if (Context.Request.RequestType != "GET")
{
Context.Response.Cache.SetCacheability(HttpCacheability.NoCache);
}
base.Initialize(requestContext);
...
}
...
}
链接地址: http://www.djcxy.com/p/55719.html
上一篇: Ajax post request in ios Safari 6 not work
下一篇: Disabling JIT in Safari 6 to workaround severe Javascript JIT bugs