Неожиданный токен <в первой строке HTML
У меня есть файл HTML:
<!DOCTYPE HTML>
<html lang="en-US" ng-app="Todo">
<head>
<meta charset="UTF-8">
<title>DemoAPI</title>
<meta name="viewport">
<link rel="stylesheet" href="#" onclick="location.href='http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css'; return false;">
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.js"></script>
<link rel="stylesheet" href="./Client/css/styling.css" />
<script type="text/javascript" src="core.js"></script>
</head>
Ошибка говорит:
Uncaught SyntaxError: Unexpected token < core.js: 1
Показывает ошибку в <!doctype html>
app.html
.
core.js
выглядит следующим образом:
angular.module('Todo', [])
.controller('mainController', function($scope, $http)
{
$scope.formData = {};
// get all and show them
$http.get('/musicians')
.success(function(data) {
$scope.todos = data;
console.log(data);
})
.error(function(data) {
console.log('Error: ' + data);
});
//get with an id
$scope.getOneTodo = function() {
$http.get('/musicians' + id)
.success(function(data) {
$scope.todos = data;
console.log(data);
})
.error(function(data) {
console.log('Error: ' + data);
});
};
// send the text to the node API
$scope.createTodo = function() {
$http.post('/musicians', $scope.formData)
.success(function(data) {
$scope.formData = {}; // clear the form
$scope.todos = data;
console.log(data);
})
.error(function(data) {
console.log('Error: ' + data);
})
};
// delete
$scope.deleteTodo = function(id) {
$http.delete('/musicians' + id)
.success(function(data) {
$scope.todos = data;
console.log(data);
})
.error(function(data) {
console.log('Error: ' + data);
});
};
/*
$scope.updateTodo = function(id) {
$http.delete('/musicians' + id)
.success(function(data) {
$scope.todos = data;
console.log(data);
})
.error(function(data) {
console.log('Error: ' + data);
});
};*/
});
Он также дает мне Uncaught Error: [$injector:modulerr] http://errors.angularjs.org/1.3.14/$injector/modulerr?p0=Todo&p1=Error%3A%2…gleapis.com%2Fajax%2Flibs%2Fangularjs%2F1.3.14%2Fangular.min.js%3A17%3A381)
Кроме того, в консоли, когда я нажимаю на core.js
, он показывает содержимое app.html
и называет его core.js
.
Вот снимок:
![Showing app.html instead of core.js]()
Также, как и на изображении, когда я нажимаю index.html
, он показывает app.html
. Однако у меня нет файла с именем index.html
и я загружаю app.html
по умолчанию вместо index.html
.
Я попытался добавить/удалить type="text/javascript"
, но не помогаю с этим.
Кроме того, статус 200 возвращается при запросе на запрос для core.js
.
![Status: 200]()
Что может быть неправильным?
Ответы
Ответ 1
Ваша страница ссылается на файл Javascript на /Client/public/core.js
.
Этот файл, вероятно, не может быть найден, создавая либо страницу сайта, либо страницу с ошибкой HTML. Это довольно распространенная проблема, например. веб-сайтах, запущенных на сервере Apache, где пути перенаправляются по умолчанию на index.php
.
В этом случае убедитесь, что вы заменили /Client/public/core.js
в теге script <script type="text/javascript" src="/Client/public/core.js"></script>
на правильный путь к файлу или поместили отсутствующий файл core.js
в папку /Client/public/
, чтобы исправить вашу ошибку!
Если вы уже нашли файл с именем core.js
в /Client/public/
, а браузер по-прежнему создает HTML-страницу, проверьте разрешения для папки и файла. Любой из них может не иметь надлежащих разрешений.
Ответ 2
Проверьте свою кодировку, я получил что-то подобное из-за спецификации.
Убедитесь, что файл core.js закодирован в utf-8 без спецификации
Ответ 3
Хорошо... Я перевернул интернет с ног на голову три раза, но не нашел ничего, что могло бы мне помочь, потому что это был проект Drupal, а не другие сценарии, описанные людьми.
Моя проблема заключалась в том, что кто-то в проекте добавил js, который был его адресом: <script src="http://base_url/?p4sxbt"></script>
и он был прикреплен таким образом:
drupal_add_js('',
array('scope' => 'footer', 'weight' => 5)
);
Надеюсь, это поможет кому-то в будущем.
Ответ 4
У нас была такая же проблема когда-то, когда сайт внезапно начал давать эту ошибку. Причина заключалась в том, что js include был временно отмечен символом # (т.е. src= "#./Js...").
Ответ 5
В моем случае я получил эту ошибку из-за строки
<script src="#"></script>
Chrome попытался интерпретировать текущий HTML файл, а затем как javascript.
Ответ 6
Для меня это был случай, когда путь к скрипту не загружался - я неправильно связал его. Проверьте файлы сценариев - даже если ошибка пути не указана - загрузите.
Ответ 7
У меня была эта проблема в приложении ASP.NET, а именно в Web Forms.
Я заставлял перенаправление в Global.asax, но я забыл проверить, был ли запрос для таких ресурсов, как css, javascript и т.д. Мне просто пришлось добавить следующие проверки:
VB.NET
If Not Response.IsRequestBeingRedirected _
And Not Request.Url.AbsoluteUri.Contains(".WebResource") _
And Not Request.Url.AbsoluteUri.Contains(".css") _
And Not Request.Url.AbsoluteUri.Contains(".js") _
And Not Request.Url.AbsoluteUri.Contains("images/") _
And Not Request.Url.AbsoluteUri.Contains("favicon") Then
Response.Redirect("~/change-password.aspx")
End If
Я заставлял зарегистрированных пользователей, которые долгое время не изменяли свои пароли, перенаправлялся на страницу change-password.aspx. Я считаю, что есть лучший способ проверить это, но пока это сработало. Если я найду лучшее решение, я отредактирую свой ответ.
Ответ 8
Я была такая же проблема. Я опубликовал приложение углового/основного приложения на iis.
Чтобы изменить Identity пула приложений, я решил проблему. Теперь Identity является LocalSystem
Ответ 9
Я испытал эту ошибку на моем сайте WordPress, но я увидел, что в моих инструментах инструментов разработчика есть два индекса.
Ошибка разработчика Chrome Developer Итак, у меня возникла мысль, что если в первой строке кода есть два индекса, то есть репликация, и они конфликтуют друг с другом. Поэтому я подумал, что тогда, возможно, это моя миниатюра HTML из моего инструмента для кэширования плагинов.
Поэтому я отключил настройку minify HTML и удалил кеш. И пуф! Это сработало!