我在Heroku上有一个meteor.js应用程序,我试图加载到Facebook Canvas应用程序中。该页面适用于所有浏览器,但Chrome在Web检查器控制台中出现错误: ERR_INCOMPLETE_CHUNKED_ENCODING ,然后页面永远不会加载。大约80%的时间都会发生这种情况,但偶尔会正确加载(多次刷新时)。
为简单起见,我将样本Meteor应用程序放在一起,该应用程序复制了我遇到的相同问题。这是heroku上的网站:https://fbmeteor.herokuapp.com 这是Facebook画布:https://apps.facebook.com/mymeteortestheroku/
我搜索过并发现许多类似的案例,其中人们在Chrome中遇到了不完整的分块编码错误,解决方案的范围从disabling anti-virus到claiming it will be fixed in future Chrome versions。
我已经尝试了所有这些以及更多,并且仍然遇到了同样的问题。在Heroku上,我的日志中出现以下错误:
heroku [router]:sock = backend at = error code = H18 desc ="服务器请求中断" method = POST path =" /"
我之所以说这是Heroku独有的原因是,我尝试运行meteor.com上托管的相同应用并将其放入Facebook Canvas。这很有力地解决了这个问题,我也没有看到它的发生(但我也不想在meteor.com上托管生产应用程序)。这是meteor.com上的网站:https://fbmeteortest.meteor.com/
我还尝试在Heroku上运行其他Node.js实现(没有Meteor)并将它们放入Facebook Canvas中,它们也可以正常工作。
供参考,这是我在Heroku for Meteor上使用的buildpack:https://github.com/AdmitHub/meteor-buildpack-horse
关于为什么只能使用Meteor.js和Heroku发生此问题的任何想法?