net metodo ejemplo asp c# api .net-2.0 httpwebrequest webrequest

c# - metodo - HttpWebRequests falla en llamadas posteriores



post c# asp net (2)

Sip, tu exactamente correcto. La respuesta no fue eliminada adecuadamente. Habíamos estado dejando esto al recolector de basura, que, lo adivinaste, no se recogía a tiempo. Lamentablemente, cerré el navegador y olvidé leer las respuestas (¡ qué estúpido crees que siento! ) Y el problema está resuelto.

He aprendido 2 cosas esta noche. 1, elimine sus peticiones web de manera adecuada; y 2, ¡PONTA MÁS ATENCIÓN A LAS RESPUESTAS DE APILAMIENTO-APILADO!

Sé que esta es una pregunta vaga, especialmente porque no proporciono ningún código, pero estoy desarrollando una aplicación .Net 2.0, y tenemos una WebRequest que publica datos en una API construida internamente.

Lo extraño sucede en nuestra tercera solicitud (y siempre la tercera) que falla en el método GetRequestStream () de la solicitud. La primera y la segunda vez que se llama, todo está bien. En la 3ª vez, se cuelga un poco y eventualmente se agota.

La API está siendo llamada por otras aplicaciones internas, por lo que sabemos que no es un problema del lado del servidor o de la red. Hemos probado varias máquinas, todas tienen el mismo problema. ¿Alguna vez alguien ha tenido este problema o alguien tiene alguna sugerencia sobre cómo depurarlo (ya que el objeto de respuesta no genera nada, o al menos nada útil).


Esto generalmente sucede si no está eliminando WebResponse. Hay un límite aplicado a la cantidad de conexiones de un cliente a la misma máquina, y por defecto son dos. Las conexiones pueden reutilizarse (o cerrarse) si cierra WebResponse. La declaración de uso es tu amiga aquí:

WebRequest request = [...]; // Do stuff with the request stream here (and dispose it) using (WebResponse response = request.GetResponse()) { // Stuff with the response }