Тема: 302 Found C#
Показать сообщение отдельно

  #4  
Старый 04.06.2010, 23:45
Bers
Новичок
Регистрация: 17.05.2010
Сообщений: 5
Провел на форуме:
13971

Репутация: 10
По умолчанию

Цитата:
Сообщение от IgrikX  
Когда сервак блюёт 302, С# блюёт в ответ, как сделать, что бы C# на строке
HttpWebResponse money_res = (HttpWebResponse)money.GetResponse();
не выкидывал из программы?
HTTP-код 302 - суть редирект.
Чтобы он обрабатывался автоматически - поставь у HttpWebRequest свойство AllowAutoRedirect в true. Либо проанализируй HTTP-заголовки (свойство Headers у класса HttpWebResponse) и выполни перенаправление самостоятельно. Например, так:

Код:
var httpResponse = (HttpWebResponse)response;
if(httpRequest.StatusCode == HttpStatusCode.Found)
{
  var addressToRedirect = httpResponse.Headers["Location"];
  // теперь в переменной addressToRedirect лежит адрес, на который тебя перенаправляют
}
Чтобы из программы не выкидывало - оборачивай критичные места в try { ... } catch { ... }.
 
Ответить с цитированием