Estoy haciendo una solicitud a un servicio RESTful de un tercero usando HttpClient
de Microsoft. Funciona sin problemas (y es muy fácil de implementar) excepto en esta instancia. Esta es una composición del proveedor en cuanto a lo que está ocurriendo durante el error:Microsoft.Http.HttpClient, enviando correctamente los parámetros de autenticación HTTP en los redireccionamientos
"La forma en que el POST al grupo funciona recurso es que cuando se finalice, se hace una redirección HTTP 302 al grupo instancia recurso. Lo que parece estar sucediendo es que su cliente HTTP está enviando la información de autenticación correcta al POST, que crea el recurso del grupo, pero cuando maneja el GET para la solicitud HTTP 302, no está enviando las credenciales correctas y está obteniendo una respuesta 401. ¿Puedes verificar tu biblioteca de cliente y asegurarte de que está enviando correctamente los parámetros de autenticación HTTP en los redireccionamientos? "
Aquí está mi código postal:
HttpClient http = new HttpClient(BASE_URL);
http.TransportSettings.Credentials = new NetworkCredential(ACCOUNT_SID,
ACCOUNT_TOKEN);
HttpResponseMessage httpResponse = http.Post(groupUri, "application/xml",
HttpContent.Create(xml.ToString()));
result = httpResponse.Content.ReadAsString();
que me lleva a mi pregunta; ¿Cómo obtengo los parámetros de autenticación para enviar en esta redirección GET usando la clase HttpClient
?
Pueden ser las cookies que probablemente utilicen para su sesión que usted no envíe (pregunte). Sería extraño solicitar información de inicio de sesión después de cada redirección (a menos que se vuelva a redir a una aplicación web o servidor diferente). –
- Jaroslav, estoy esperando su respuesta con respecto a las cookies. en cuanto a enviarlos, ¿conoces la forma correcta? intenté agregar esta línea: http.TransportSettings.Cookies = new CookieContainer(); sin suerte ... – Drew
¿está utilizando el HttpClient del kit de inicio WCF REST? ¿Qué framework .net? ¿HttpClient tiene alguna propiedad para controlar si seguir automáticamente los redireccionamientos? (similar a HttpWebRequest.AllowAutoRedirect)? –