2013-06-12 67 views
9

我们正在开发使用Node.js的meteor.js的应用程序,该应用程序是在Firefox,Chrome和IE 10工作正常,但是当我们尝试浏览这个在IE-9中的应用程序,它不会加载。Meteor.js应用程序不支持IE 9

我调查了两个浏览器(IE9,Firefox)的请求/响应,并且我发现对于XHR请求,IE 9使用iframe轮询代替Web套接字进行数据传输。在这种情况下,IE 9不保留Cookie,并且每个XHR请求都会导致401错误。因此,cookie不会在IE 9中的iframe中发送。

我调查了如何为iframe启用cookie,并且我发现我们可以使用隐私策略平台(p3p)实现此目的。要启用p3p,您必须在域文件夹内的w3c文件夹中的响应头和privacy.policy文件中添加p3p键。我已经完成了所有这一切。

但是我的情况并不奏效,我做了很多R & D来设置p3p的不同-2键。但仍然面临着在IE9中加载应用程序的问题。

+2

这可能是徒劳无益的,但你尝试过使用陨石(社区支持的包管理器),并安装了Modernizr的包? https://atmosphere.meteor.com/package/modernizr-meteor这可能会提供适合IE9的polyfill – booyaa

+1

[cookie阻止/未保存在Internet Explorer中的IFRAME中]的可能重复(http://stackoverflow.com/questions/ 389456/cookie-blocked-not-saved-in-iframe-in-internet-explorer) –

+1

@booyaa modernizr用于特征检测,不提供pollyfills。 –

回答