我正在使用带有 Restlet的 AppEngine 将我的数据作为客户端提供给浏览器中的 GWT 应用程序。Restlet-GWT 版本使用 GWT-RPC 序列化作为底层传输格式。GWT-RPC 序列化依赖于客户端和服务器之间的共享源来序列化/反序列化。
现在,在向其中一个共享源类添加新属性后,反序列化开始失败。AppEngine 服务器使用响应 HTTP 200 / OK 正确处理了请求,并发送了一个正确序列化的对象。客户每次都噎住。
过了一会儿,我发现浏览器正试图反序列化我的对象的缓存副本(没有新添加的属性),因此浏览器中的反序列化失败了。
现在的问题是:如果服务器被击中,为什么浏览器要使用缓存副本?
IMO,这违背了缓存的目的/优势,正在消耗服务器和网络资源并且没有使用新的结果?如果浏览器决定使用缓存副本,我预计不会往返服务器。
谢谢 !