SignalR 2.0 - 400 неверный запрос
Установленный образец пакета nuget signalR в существующее приложение MVC. При согласовании соединения я получаю следующую ошибку случайно:
NetworkError: 400 Bad Request - http://localhost:19000/signalr/connect?transport=serverSentEvents&clientProtocol=1.5&connectionToken=GXM1JG%2B8qT13Q5DRblCFTVqQL1OrRS9dvSJ2hoYTEo9aghcvO0aQbKPUW9hC%2Bw4%2FpKfpmLRNcpCeJEnS4WkON%2F3JxjUshiaRRBf5UzoAsjZSmJdn&connectionData=%5B%7B%22name%22%3A%22stockticker%22%7D%5D&tid=7"...
В других случаях я могу установить соединение просто отлично. Я заметил, что это связано с ConnectionToken, содержащим знак "+"
Не работает:
"ConnectionToken":"+S981mX0eUA2mfsuMB2nFO9ufg/47e2RAjOA38BS5ZQ14mfdeb8uNyk28UEe+7RmLYKHIuWi+9dTo5v3r8G8j3u6rmTavzt87jqKabhlHTue6Wqi"
connectionToken=%2BS981mX0eUA2mfsuMB2nFO9ufg%2F47e2RAjOA38BS5ZQ14mfdeb8uNyk28UEe%2B7RmLYKHIuWi%2B9dTo5v3r8G8j3u6rmTavzt87jqKabhlHTue6Wqi
Работает:
"ConnectionToken":"zBvrOSuqziot9pJXKfAxpXfPMYY4pI/069Ks/uDoOwm8YYydTParbim7o3YiyrM4NInLJ7wKzwc3YXAlb3sVUq/R0abV2OSOzMydbgUYMPfawEDv"
connectionToken=zBvrOSuqziot9pJXKfAxpXfPMYY4pI%2F069Ks%2FuDoOwm8YYydTParbim7o3YiyrM4NInLJ7wKzwc3YXAlb3sVUq%2FR0abV2OSOzMydbgUYMPfawEDv
Напротив, я создал новое приложение MVC и установил образец SignalR Nuget - на этот раз все работает просто отлично.
Какие могут быть потенциальные причины такого поведения в моем существующем приложении?
1 ответ
Решение
Эта проблема была связана с одним из существующих модулей IHTTP, который переписывал URL-адрес в цикле запросов http, и не был связан с SignalR.