Это ошибка, которую я получаю при проверке браузера -> вкладка Консоль файла index.html.
Отказ от выполнения скрипта из 'http://localhost:63342/runtime.js' из-за его MIME-типа('text / html') не является исполняемым, и включена строгая проверка типов MIME.
Мое приложение представляет собой интеграцию Spring-загрузки и Angular. Я полагаю, что это также является причиной того, что spring-boot не обслуживает содержимое интерфейса js и .html в пользовательском интерфейсе. Несмотря на то, что бэкэнд-приложение работает нормально, но при запуске службы tomcat, оно не отображает никакого пользовательского интерфейса http://localhost:8080.
Angular CLI: 6.0.8
Node:10.0.0
OS: darwin x64
Angular: 6.1.7
Сгенерированный index.html имеет теги:
<script type="text/javascript" src="runtime.js"></script>
<script type="text/javascript" src="polyfills.js"></script>
<script type="text/javascript" src="styles.js"></script>
<script type="text/javascript" src="vendor.js"></script>
<script type="text/javascript" src="main.js"></script>
Изменение типа вручную на «text / html» устраняет ошибку, но все равно ничего не показывает в пользовательском интерфейсе,Это проблема из-за конкретной версии angular-cli?Связаны ли мои две проблемы (пружина не обслуживает статические ресурсы внешнего интерфейса)?Или база HREF не так?Есть ли способ не решить эту проблему, не изменяя вручную тип в теге сценария?Потому что index.html генерируется при запуске ng build
и помещается в каталог ресурсов.И я делаю это, чтобы облегчить развертывание.Вот весь сгенерированный файл index.html:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Welcome App</title>
<base href="/">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/x-icon" href="favicon.ico">
</head>
<body>
<app-root></app-root>
<script type="text/javascript" src="runtime.js"></script><script type="text/javascript" src="polyfills.js"></script><script type="text/javascript" src="styles.js"></script><script type="text/javascript" src="vendor.js"></script><script type="text/javascript" src="main.js"></script></body>
</html>
Я новичок в этом деле, пожалуйста, помогите.
Это то, что я вижу в браузере -> Сеть ->Заголовки (при открытии файла из браузера опция в Intellij и tomcat не работает).Заголовок ответа для одного из сгенерированных угловых файлов:
HTTP/1.1 304 Not Modified
content-type: text/html
server: IntelliJ IDEA 2018.1.2
date: Sun, 16 Sep 2018 16:08:39 GMT
X-Frame-Options: SameOrigin
X-Content-Type-Options: nosniff
x-xss-protection: 1; mode=block
Но когда Tomcat запущен и работает, обратите внимание на ответ 200 при проверке:
HTTP/1.1 200
Content-Type: application/json;charset=UTF-8
Поскольку его app / json и я вижу[] в ответ, который я считаю неправильным и должен был быть html-ответом.
Являются ли эти теги сценариев, которые добавляются в ng build в index.html, проблемой, из-за которой не отображается содержимое в пользовательском интерфейсеили что-то еще? Я так не думаю, потому что я скопировал и вставил свое статическое содержимое в демо-проект Gradle (с https://start.spring.io/), и он отображает пользовательский интерфейс на веб-странице, поэтому изменив «text / javascript» на «html»на самом деле это не проблема, в которую я верю, но не уверен. И вот что я вижу в ответ на рабочий интерфейс:
HTTP/1.1 200
Accept-Ranges: bytes
Content-Type: text/html;charset=UTF-8
Есть предложения?