2015-02-15 1 views
3

Я создаю передний конец в AngularJS для backend в node.js. У меня есть опция двух простых интерфейсных серверов node.js для обслуживания веб-страницы переднего конца: один из них - простой app.get в экспресс, другой - пакет http-server.«Синхронный XMLHttpRequest в основном потоке устарел» с помощью nodejs app.get или http-server

Какой бы передний конец кода сервера я использую, я получаю следующий браузер консольное сообщение в Chrome:

Синхронный XMLHttpRequest в основном потоке является устаревшим из-за его вредного воздействия на опыт конечного пользователя. Для получения дополнительной помощи проверьте http://xhr.spec.whatwg.org/.

Чтобы убедиться, что это не было вызвано чем-то угловым (или Bootstrap) Я сократил мою страницу на следующее:

<!DOCTYPE html> 
<html lang="en" > 
    <head> 
    <meta charset="utf-8"> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
    <title>zoneshark</title> 
    </head> 
    <body> 
    <h1>Hello, world!</h1> 
    </body> 
</html> 

Почему я получаю сообщение об ошибке? Всегда ли возникает проблема с http-сервером? Как настроить внешний сервер с помощью nodejs, чтобы эта ошибка не возникала (только эта простая страница «привет мир» была бы отправной точкой)?

Серверный код, я использую в качестве альтернативы HTTP-сервер:

var express = require('express'); 
var app = express(); 

app.get('/', function(req,res) { 
    res.sendFile('./index.html', {root: __dirname}); 
}); 

app.get(/^(.+)$/, function(req, res) { 
    res.sendFile('./' + req.params[0], {root: __dirname}); 
}); 

app.listen(80); 

Еще одна странность. С консоли http-server похоже, что http-сервер обслуживает два ресурса: /index.html, как и ожидалось, но также и /favicon.ico - что странно, поскольку это нигде не упоминается.

Последняя особенность: это происходит только от Chrome. Из IE нет проблемы, и нет favicon.ico.

В Chrome я очистил все данные просмотра, кроме данных формы автозаполнения, паролей и лицензий на контент.

+2

Это ошибка на стороне клиента, поэтому в вашем примере должно быть больше. Ошибки относятся к чему-то, что пытается сделать синхронный запрос AJAX, но ваш пример вообще не показывает JS. Он появляется только в Chrome, потому что это единственный браузер, который беспокоит ввод предупреждения. – loganfsmyth

+1

См. 'Async' в [MDN docs] (https://developer.mozilla.org/en-US/docs/Web/ API/XMLHttpRequest # открыт()) – loganfsmyth

ответ

4

Спасибо за комментарии. Я отследил проблему, и она находится в Chrome - более конкретно, расширения.

Вопрос с расширением У меня есть: PropertyWizza v2.0. Отключение этого расширения устраняет проблему. Теперь я удалю его, чтобы он не мешал моим сообщениям о развитии.

Все это было выведено из-за того, что я заметил, что у меня была такая же проблема при доступе к любому веб-сайту, включая BBC и GitHub, например, с любого компьютера в моем доме, если я использовал Chrome.

Советуем всем, кто начинает отлаживать интерфейсы в первый раз, - это проверить, какие ошибки вы получаете на других сайтах во всех браузерах, прежде чем начать. Это обеспечит «контроль» для вашего тестирования.