2015-08-11 2 views
0

Я разрабатываю приложение ASP.NET MVC и для уведомлений использую signalr.Иногда Signalr не был правильно загружен

В моей странице Layout.cshtml, я сослалась на signalr в правильном порядке, как показано ниже

<script type="text/javascript" src="@Url.Content("~/Scripts/jquery-2.1.3.min.js")"></script> 
@* Signalr part goes here *@ 
<script src="~/Scripts/jquery.signalR-2.2.0.min.js"></script> 
<script type="text/javascript" src="/signalr/hubs"></script> 

Ниже был код, чтобы запустить соединение

if ($.connection.broadcastHub) { 
     $.connection.hub.start({ transport: 'longPolling' }).done(function() { 
     }); 
} 

Выпуск

Теперь все работает нормально, если signalr загружается правильно, но иногда signalr не загружается правильно, как ожидалось, и он бросает ниже ошибки в консоли

enter image description here

Если я еще раз обновить страницу (Ctrl + F5) его загрузка правильно и работает, как ожидалось, но иногда signalr бросает выше ошибки, и я не в состоянии решить эту проблему.

Я нашел подобный вопрос SignalR: Sometimes Negotiating requests returns 404 error (Load-balanced) Но, я ничего не делаю с ключом машины в web.config и я не знаю ни о чем о машине ключа

Пожалуйста, вы можете представить свои предложения для решения этой проблемы. Благодаря

+0

Вы помещаете свой js-код в $ (function() {...})? – chenZ

+0

Нет, я не поставил – SDK

+0

, так что, когда brower запускает js-код, некоторый js-файл не загружается полным – chenZ

ответ

2

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