xmlhttprequest – Safari将200个对AJAX请求的响应静默转换为304
摘要:Safari报告304响应,即使它在XHR请求上收到200响应
你好 – 我和Safari有一个奇怪的情况,并且已经到了试图自己研究它的路的尽头,我希望有人在这里遇到过这个问题. 我目前开始在Safari中使用我的应用程序(一个厚厚的Sencha Touch客户端与NodeJS提供的RESTful API交谈)并注意到浏览器偶尔(实际上是:大约5次中有6次)错误处理服务器响应并报告它们(在开发人员工具网络控制台中)作为没有内容的304响应,而不是实际传递的具有JSON内容的200个响应. (并且应用程序正在相应地运行 – 无内容304响应导致应用程序假设它没有数据,并且它以这种方式响应,因此它不仅仅是开发人员面板中的装饰问题.) 标题甚至不正确 – 这里是两个案例的Safari报告的不相交的响应头集合(我已经确认请求内容和标题对于两者是相同的): 200 > Access-Control-Allow-Credentials:true 304 >内容类型:text / javascript (我省略了两者之间相同的响应头.) 其他几点说明 >我已经验证了服务器发送的响应在每次请求时都是相同的,并且已经tcpdump了流量并确认服务器正在发送200个响应代码(和标头),然后由Safari报告和处理为304响应没有内容(以及上面的虚假标题.)Safari正在报告从未发送的响应. 版本 > Safari:5.1.1 解决方法
伟大的研究工作.你看到的是一个Ajax Redirection&通常你不能在大多数开发人员工具中看到它,但它会发生.理想情况下,它应该对您的应用程序没有影响,在您的问题中我没有看到您报告任何问题或错误只是更多的请求.
这个重定向是在浏览器级别处理的,所以你无能为力(我过去曾尝试过,对此无能为力). 这不是一个传言问题,而是Ajax的行为方式. 希望能帮助到你 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- Ajax 配合node js multer 实现文件上传功能
- c# – 在.NET中序列化,在C中反序列化
- Mariadb之显式使用表锁和行级锁
- 我有问题连接oracle DB与SQL开发人员
- Data Guard Physical Standby Setup in Oracle Database 11
- 解决 cocos android 接入友盟推送 sdk 在5.0以下的系统出现
- 哪个NoSQL数据库与C一起使用?
- WM/WinCE 下访问Sqlite的Native C++封装 (CppSQLite3U的使用
- 简要分析VB6.0和VB.NET区别
- 使用ExternalInterface调用Flex方法-无参数、无返回值!