2011-01-25 20 views
10

Acabo de descargar C# SDK y ASP.NET MVC sample, lo he modificado para que funcione con 4.2.1. (web config facebookConfiguración de parámetros, etc.), creó mi aplicación de Facebook e intentó ejecutarla. Haga clic para botón de inicio de sesión de Facebook - bien, introducir las credenciales en facebook emergente - ok, permitiendo el acceso para mi aplicación - bien, y luego me sale este error:Se ha intentado acceder a un socket de una manera prohibida por sus permisos de acceso

System.Net.Sockets.SocketException: An attempt was made to access a socket in a way forbidden by its access permissions 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 objeto está bien creo (que contiene parámetros de configuración, objeto de sesión con token de acceso y mi usuario de Facebook, etc.)

Estoy usando la dirección de desarrollo local http://myappdev.local (establecida en 127.0.0.1 en el archivo de hosts). La misma dirección se establece en la configuración de mi aplicación de Facebook, también dominio myappdev.local - ¿Puede ser este el problema? He visto ejemplos usando localhost:1234 en algunos tutoriales.

Respuesta

18

Resuelto ... mi mal - mi firewall se "silencio" bloqueando proceso de trabajo de la ISS se conecte en el puerto 443 ... espero que al menos me ahorro alguien del mismo error :)

+1

cómo determinar y corregir esto? – rickyProgrammer

+1

Mi problema también era McAfee Anti-Virus bloqueando conexiones SMTP como en los comentarios en la respuesta de Franklin_Skipdiddle a continuación. (Volví a subir esta respuesta ya que básicamente es la misma que la de Franklin pero antes). – David

7

Sé que esto la publicación es de 2011, pero sigue siendo el primer resultado para la búsqueda de Google que coincide con su título textualmente, que resulta ser el código de error exacto;). Anywho, pensé que agregaría mis dos centavos para cualquier otra persona que tenga el error, ya que mi resolución era similar pero diferente.

El problema estaba en mi parte también. Aunque estaba usando un cliente smtp para enviar correos. Ejecuto PeerBlock y bloquea direcciones IP sospechosas. Vi que estaba bloqueando una de las IP a las que estaba enviando antes de que saliera de mi red. Una excepción de regla simple y el problema fue resuelto.

TL; DR Los cortafuegos y otras herramientas de filtrado de seguridad de Internet deben verificarse para asegurarse de que este problema no se produzca en su extremo.

+2

Sí, el antivirus de McAffee bloqueó mi caso. Comprobé los registros y noté que las solicitudes al servidor SMTP estaban bloqueadas. Al deshabilitar temporalmente los correos electrónicos de Protección de acceso se pueden enviar. –

+0

La gente dice que esto podría ser un firewall/software de seguridad de marca, sin embargo, si está en un servidor y se muestra el mismo mensaje de error en muchos dispositivos, ¿podría significar que no es una configuración de firewall? ¿Correcto? – user2903379

15

Si usted está recibiendo el mismo error en el desarrollo de Windows 8, podría ser que usted no ha permitido el acceso a través de redes privadas en su Package.appxmanifest archivo:

Highlighting the Private Networks (Client & Server) option

+1

¡Gracias, gracias! Esto no resolvió mi problema por completo, pero me dio al menos un paso más. – lje

1

enfrentaron un problema similar, me revisó todo lo que podría causar el error, esto incluye el puerto correcto para usar, configuraciones de firewall incluso el sistema operativo de los problemas de compatibilidad del servidor, solo para descubrir que el antivirus es el que lo causa,

Asegúrese de deshabilitar la función de su antivirus que está bloqueando la s conexión de paquete, o agregue a la exención el .exe o programa específico que desea que no se muestre.

Mine utiliza McCafee y desactivo la función que bloquea la conexión de socket para enviar correos y funcionó.

0

Ejecuto un MySQL DB localmente y tuve un problema similar.Hice todos los pasos que se muestran en los mensajes relacionados con el mismo tema:

  • cortafuegos discapacitados
  • antivirus discapacitados
  • Restablecer pila TCP/IP
  • equipo se reinició
  • cadena de conexión verificado

Ninguno de estos funcionó. Descubrí que el problema para mí era mi VPN (Astrill). Por alguna razón, estaba causando que estas conexiones de host local fallaran. La desconexión de VPN solucionó mi problema.

1

Me he encontrado con un problema similar cuando traté de ejecutar una simple aplicación web http escuchando en el puerto 80 escrito en Go (golang) en Windows 10 Home.

Después de investigar un poco descubrí que por alguna razón se estaba ejecutando el "Servicio de publicación en la World Wide Web" (W3SVC). Detener e inhabilitar el servicio resolvió mi problema.

Nunca utilicé este servicio. Supongo que una instalación de Visual Studio Community 2013 en el pasado instaló y habilitó este servicio. Cuando encontré el problema por primera vez, pensé que era un problema de privilegio, ya que es el caso de los sistemas Linux donde las aplicaciones que se escuchan en los puertos < 1023 deben ejecutarse con privilegios de administrador. Pero en Windows 1023 este no es el caso.

Después de todo, encontrar este problema trivial me costó unas 2 horas, es por eso que publico esta respuesta a este hilo bastante viejo.

Básicamente este es un resumen de lo que hice:

1) Google para el mensaje de error (como totalmente contenida en la pregunta de este hilo).
- A muchos problemas no relacionados con mis problemas específicos han sido devueltos.
- No encontré una respuesta concreta que resolvió mi problema.
- Sin embargo, encontré sugerencias para un análisis más detallado.

2) La primera sugerencia fue usar netstat.

netstat -o -n -a | findstr 0.0.0.0:80 
netstat -o -n -a | findstr 127.0.0.1:80 

Resultó que el proceso de identificación con 4 estaba escuchando en el puerto 80.

3) Proceso de búsqueda # 4 en la pestaña Detalles en el Taskmanager.

Esto demostró que el sistema (NT Kernel & Sistema) está involucrado.

4) Intentar acceder a puerto 80 en el servidor local con el uso de masilla de Telnet al puerto 80.
(Asegúrese de ajustar ** El cierre de la salida * a Nunca)

<!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) La información recopilado hasta el momento no proporcionó una pista concreta, pero me permitió hacer búsquedas más específicas en Google. Ahora, la información devuelta por Google indica que lo más probable es que algún tipo de servicios del sistema que escuchan en el puerto 80 sea la fuente del problema.

6) Ahora era fácil buscar tales servicios en ejecución en el administrador de servicios.El primero que encontré que podría ser el origen del problema (ya que contenía WWW en su nombre) fue "WWW-Publishingdienst" (en mi computadora en alemán), que significa "World Wide Web Publishing Service" en sistemas con inglés. ajustes de idioma. Paré el servicio y - ¡Voila! Fue la causa del problema.

Cuestiones relacionadas