Приложение Facebook Canvas на Heroku с Meteor.js — неполное фрагментированное кодирование

У меня есть приложение meteor.js на Heroku, которое я пытаюсь загрузить в приложение Facebook Canvas. Страница отлично работает во всех браузерах, кроме Chrome, где я получаю сообщение об ошибке в консоли веб-инспектора: ERR_INCOMPLETE_CHUNKED_ENCODING, после чего страница никогда не загружается. Это происходит примерно в 80% случаев, но иногда загружается правильно (при многократном обновлении).

Для простоты я собрал пример приложения Meteor, в котором воспроизведены те же проблемы, что и у меня. Вот сайт на героку: https://fbmeteor.herokuapp.com А вот канва Facebook: https://apps.facebook.com/mymeteortestheroku/

Я просмотрел и нашел много похожих случаев, когда люди сталкивались с ошибкой Incomplete Chunked Encoding в Chrome, и решения варьировались от отключение антивируса для утверждения, что это будет исправлено в будущих версиях Chrome.

Я пробовал все это и многое другое, и все еще сталкиваюсь с теми же проблемами. На Heroku я получаю следующую ошибку в своих журналах:

heroku [маршрутизатор]: sock = backend at = код ошибки = H18 desc = "запрос сервера прерван" method = путь POST = "/"

Причина, по которой я говорю, что это уникально для Heroku, заключается в том, что я попытался запустить то же приложение, размещенное на meteor.com, и поместил его на холст Facebook. Это принудительно устранило проблему, и я не вижу, чтобы это происходило (но я также не хочу размещать производственное приложение на meteor.com). Вот веб-сайт meteor.com: https://fbmeteortest.meteor.com/

Я также пробовал запускать другие реализации Node.js (без Meteor) на Heroku и размещать их на холсте Facebook, и они тоже работают нормально.

Для справки, вот пакет сборки, который я использую на Heroku для Meteor: https://github.com/AdmitHub/meteor-buildpack-horse

Любые идеи о том, почему эта проблема будет происходить исключительно с Meteor.js и Heroku?


person AdmanStrong    schedule 07.08.2015    source источник