Ответ 1
Решено... мой плохой - мой брандмауэр "молча" блокировал рабочий процесс ISS от подключения к порту 443... Надеюсь, что по крайней мере я спасу кого-нибудь из той же ошибки:)
Я только что загрузил С# SDK и образец ASP.NET MVC, изменил его для работы с 4.2.1. (параметры веб-конфигурации facebookSettings и т.д.), создал мое приложение Facebook и попытался запустить его. Нажмите кнопку facebook login - ok, введите учетные данные в всплывающее окно facebook - ok, разрешив доступ для моего приложения - нормально, а затем я получаю эту ошибку:
System.Net.Sockets.SocketException: была предпринята попытка получить доступ к сокету способом, запрещенным его разрешениями доступа 66.220.146.47:443
var app = new FacebookApp();
if (app.Session == null)
{
// The user isnt logged in to Facebook
// send them to the home page
return RedirectToAction("Index");
}
// Get the user info from the Graph API
dynamic me = app.Api("/me"); // EXCEPTION THROWN HERE
ViewData["FirstName"] = me.first_name;
ViewData["LastName"] = me.last_name;
Tje app
объект в порядке. Я думаю (содержащий параметры параметров, объект сеанса с токеном доступа и мой идентификатор пользователя facebook и т.д.)
Я использую адрес локальной разработки http://myappdev.local
(устанавливается в 127.0.0.1
в файле hosts). Тот же адрес указан в настройках моего приложения для facebook, а также в домене myappdev.local
. Может ли это быть проблемой? Я видел примеры с использованием localhost:1234
в некоторых учебниках.
Решено... мой плохой - мой брандмауэр "молча" блокировал рабочий процесс ISS от подключения к порту 443... Надеюсь, что по крайней мере я спасу кого-нибудь из той же ошибки:)
Если вы получаете ту же ошибку в разработке Windows 8, возможно, вы не разрешили доступ к частным сетям в вашем файле Package.appxmanifest
:
Я знаю, что это сообщение с 2011 года, но оно по-прежнему является первым результатом поиска google, соответствующего его заголовку, который является точным кодом ошибки;). Anywho, я думал, что добавлю свои два цента для кого-то другого, имеющего ошибку, так как моя резолюция была сходной, но другой.
Проблема была и на моем конце. Тем не менее, я использовал smtp-клиент для отправки почты. Я запускаю PeerBlock и блокирует подозрительные IP-адреса. Я видел, что это блокировало один из IP-адресов, которые я отправлял, прежде чем он покинул мою сеть. Простое исключение правила и проблема была решена.
TL; DR. Все брандмауэры и другие средства фильтрации интернет-безопасности должны быть проверены, чтобы убедиться, что эта проблема не вызвана на вашем конце.
столкнулся с аналогичной проблемой, я проверил все, что может вызвать ошибку, это включает в себя правильный порт для использования, настройки брандмауэра даже в операционной системе проблем с совместимостью сервера, только чтобы узнать, что антивирус - это тот, который вызывает он,
Обязательно отключите функцию антивируса, который блокирует соединение сокета, или добавьте к исключению конкретный .exe или программу, которую вы не хотите разблокировать.
Mine использует McCafee, и я сниму эту функцию, которая блокирует соединение сокетов для отправки писем, и это сработало.
У меня возникла аналогичная проблема, когда я попытался запустить простое http-приложение, прослушивающее порт 80, написанное в Go (golang) в Windows 10 Home.
После некоторых исследований выяснилось, что по некоторым причинам работает служба публикации World Wide Web (W3SVC). Остановка и отключение службы решила мою проблему.
Я никогда не использовал эту услугу. Я предполагаю, что установка Visual Studio Community 2013 в прошлом была установлена и включила эту службу. Когда я впервые столкнулся с проблемой, я подумал, что это проблема с привилегиями, как в случае с системами Linux, где приложения, прослушивающие порты < 1023 должен выполняться с привилегиями root. Но в Windows 1023 это не так.
В конце концов, поиск этого тривиального вопроса стоил мне около 2 часов, поэтому я отправляю этот ответ на этот довольно старый поток.
В основном это резюме того, что я сделал:
1) Google для сообщения об ошибке (как полностью содержится в вопросе об этом потоке).
- Во многие проблемы, не связанные с моими конкретными проблемами, были возвращены.
- Я не нашел конкретного ответа, который решил мою проблему.
- Однако я нашел подсказки для дальнейшего анализа.
2) В первом совете использовался netstat.
netstat -o -n -a | findstr 0.0.0.0:80
netstat -o -n -a | findstr 127.0.0.1:80
Оказалось, что процесс с Id 4 прослушивает порт 80.
3) Процесс поиска №4 на вкладке "Сведения" в диспетчере задач.
Это показало, что задействована System (NT Kernel и System).
4) Попытка доступа к порту 80 на localhost с помощью PUttY с Telnet на порт 80.
(обязательно установите ** Закрытие при выходе *, чтобы никогда)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd">
<HTML><HEAD><TITLE>Bad Request</TITLE>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=us-ascii"></HEAD>
<BODY><h2>Bad Request - Invalid Verb</h2>
<hr><p>HTTP Error 400. The request verb is invalid.</p>
</BODY></HTML>
HTTP/1.1 400 Bad Request
Content-Type: text/html; charset=us-ascii
Server: Microsoft-HTTPAPI/2.0
Date: Thu, 05 Oct 2017 13:13:29 GMT
Connection: close
Content-Length: 326
5) Информация, собранная до настоящего времени, не предоставила конкретного намека, но позволила мне выполнять более конкретные поисковые запросы в Google. Теперь информация, полученная от Google, показала, что наиболее вероятным источником проблем может быть какой-то системный сервис, прослушивающий порт 80.
6) Теперь было легко найти такие запущенные сервисы в диспетчере сервисов. Первый, который я нашел, который, вероятно, мог быть источником проблемы (поскольку он содержал WWW в его названии), был "WWW-Publishingdienst" (на моем компьютере на немецком языке), который означает "World Wide Web Publishing Service" на системах с английским языком языковые настройки. Я остановил службу и - Вуаля! Это стало причиной проблемы.
Я запускаю базу данных MySQL локально, и у меня была аналогичная проблема. Я сделал все шаги, показанные в сообщениях, связанных с одной и той же проблемой:
Ничего из этого не получилось. Я узнал, что проблема для меня - это моя VPN (Astrill). По какой-то причине это привело к сбою этих соединений localhost. Отключение от VPN устранило мою проблему.