Браузер не может проанализировать manifest.json в приложении Node.js после его развертывания в Cloud Foundry. - PullRequest
0 голосов
/ 09 октября 2018

Я создал приложение Node.js с angularJS.Мне нужно добавить функциональность «Добавить на главный экран» в приложение.Поэтому я добавил файл manifest.json, как показано ниже.

{ "name": "TEST-APP", "short_name": "TEST-APP", "version": "0.0.0.1", "background_color": "#313131", "theme_color": "#313131", "manifest_version": 2, "icons": [ { "src": "images/Test-App.png", "sizes": "192x192", "type": "image/png" }, { "src": "images/Test-App.png", "sizes": "512x512", "type": "image/png" } ], "start_url": "http://localhost:6001/", "display": "standalone" }

При тестировании приложения в localhost оно может проанализировать манифест.Но после развертывания в Cloud Foundry я получаю сообщение об ошибке ниже.enter image description here Пожалуйста, помогите мне с этим.

Я попытался изменить кодировку manifest.json на UTF-8.

1 Ответ

0 голосов
/ 19 октября 2018

На самом деле не должно быть такой большой разницы, как при работе локально по сравнению с работой на CF.Вот некоторые вещи, которые вы можете проверить, хотя ...

  • Посмотрите на результаты подготовки (т. Е. Пакет сборки nodejs).Убедитесь, что он устанавливает ту же версию Nodejs и пакетов, которые вы используете локально.Пакет сборки склоняется по умолчанию к самым новым / последним версиям вещей.Если вы используете более старую версию локально, вы можете увидеть различия.

  • Посмотрите на фактический файл manifest.json, который подается из приложения при работе на CF.Вполне возможно, что он не обслуживает то, что вы ожидаете, и, следовательно, JSON не может быть проанализирован.Например, доступ к JSON может вернуть ошибку 404 или сервера.Они не будут действительными JSON и, следовательно, потерпят неудачу.Если вы переключитесь на вкладку «Сеть», вы сможете увидеть, были ли проблемы, и увидеть точные возвращенные данные ответа.

  • Вы можете установить плагин cf local.Это позволяет вам запускать ваше приложение, используя тот же сборочный пакет, который запускает его на CF, но в локальном контейнере Docker.Это позволяет вам проверить теорию «работает локально нормально», используя те же версии программного обеспечения, которые будут запускать ваше приложение на CF.

    https://github.com/cloudfoundry-incubator/cflocal

Надеюсь, что это поможет!

...