Подтвердить что ты не робот

Не было прослушивание конечных точек (url), которые могли бы принять сообщение

Я создаю веб-сайт ASP.NET - это решение с несколькими проектами, базой данных и веб-сервисом. Все работало нормально, но в прошлый раз, когда я пытался запустить проект, я получил следующую ошибку:

There was no endpoint listening at http://localhost:[number]/BooksWS.svc that could accept the
message. This is often caused by an incorrect address or SOAP action. See InnerException, 
if present, for more details.

Внутреннее исключение говорит:

Unable to connect to the remote server

Этот вид ошибки вышел из синего цвета, поэтому я не уверен, какую дополнительную информацию я должен предоставить. Кто-нибудь знает, почему это может случиться?

Я полагаю, что даже общий ответ может помочь, единственная информация, которую я нашел об этой ошибке в Интернете, касающейся WCF.

4b9b3361

Ответ 1

перейдите на страницу webconfig вашего сайта, найдите конечную точку тега и проверьте порт в атрибуте адреса, возможно, произошел сбой в номере порта

Ответ 2

Другой случай, который я только что имел - когда размер запроса больше размера запроса, установленного в IIS как предел, вы также можете получить эту ошибку.

Проверьте лимит запросов IIS и увеличьте его, если он ниже, чем вам нужно. Вот как вы можете проверить и изменить предел IIS-запроса:

  • Откройте IIS
  • Нажмите на свой сайт и/или ваше сопоставленное приложение.
  • Нажмите "Просмотр функций" и нажмите "Фильтрация запросов"
  • Нажмите "Изменить настройки параметров".

Edit Feature Settings

Я просто нашел еще один поток в стеке Служба WCF, содержащая IIS 7.5, выдает EndpointNotFoundException с 404 только для больших запросов

Ответ 3

Еще один возможный случай - убедитесь, что у вас установлена ​​функция WCF Activation. Откройте Диспетчер серверов > Функции > Добавить функции

введите описание изображения здесь

Ответ 4

Короткий ответ, но у вас есть Skype? Это особенно влияет на ASP.NET по умолчанию (и localhosts в целом), используя порт: 80.

В Windows: перейдите в Инструменты → Параметры → Дополнительно → Подключение и снимите флажок "Использовать порт 80 и 443 в качестве альтернативы входящим соединениям".

Ответ 5

Попробуйте следующее:

  • Удалить экземпляр службы.
  • Создайте новый экземпляр службы.

Иногда порт изменяется и генерируется ошибка.

Ответ 6

Если вы используете настраиваемую привязку, убедитесь, что вы вносите одно и то же имя для как пользовательской привязки (сервер и клиент) в файлы конфигурации

<bindings>
<customBinding>
 <binding name="BufferedHttpServerNoAuth" closeTimeout="00:10:00" openTimeout="00:10:00" receiveTimeout="00:10:00" sendTimeout="00:10:00">
          <gzipMessageEncoding innerMessageEncoding="textMessageEncoding" MaxArrayLength="10485760" MaxBytesPerRead="31457280" MaxStringContentLength="102400000" />
          <httpsTransport hostNameComparisonMode="StrongWildcard" manualAddressing="False" maxReceivedMessageSize="31457280" authenticationScheme="Anonymous" bypassProxyOnLocal="True" realm="" useDefaultWebProxy="False" />
</binding>
</customBinding>
</bindings>

имя привязки BufferedHttpServerNoAuth "должно быть одинаковым для обоих.

Надеюсь, это поможет кому-то

Ответ 7

У меня была эта проблема, когда я пытался вызвать службу WCF, размещенную на новом сервере, из приложения Windows из моего локального. Я получал такое же сообщение об ошибке и в конце имел это "Никакое соединение не могло быть сделано, потому что целевой компьютер активно отказался от него 127.0.0.1:8888" . Я не знаю, ошибаюсь я или неправильно, но я чувствую, что всякий раз, когда сервер получал запрос от моего приложения Windows, он маршрутизируется на что-то еще. Поэтому я прочитал и добавил ниже в Web.config проекта хоста службы. После этого все работало как волшебство.

<system.net>
    <defaultProxy enabled="false">
    </defaultProxy>
</system.net>

Ответ 9

Это древняя история, но я только столкнулся с этой проблемой, и исправление для меня заключалось в переработке пула приложений веб-сайта в IIS. Легко исправить, на этот раз.