Вывести заголовок Location при ответе от сервера 302 - C#
Формулировка задачи:
Добрый день
Возникла проблема. При обращении к серверу (метод POST) сервер отвечает 302 и в заголовке location указывает ссылку по которой нужно обращаться. вот вопрос. Как вывести этот url хранящийся в заголовке location?
Пробую так, не получается. ниже функция которая отправляет POST запрос на сервер и считывает ответ в переменную ( с этим проблема ). Подскажите кто сталкивался. Благодарю
public static string PostMethod(string postedData, string postUrl, string outputHeader)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(postUrl);
request.Method = "POST";
request.Proxy.Credentials = CredentialCache.DefaultCredentials;
UTF8Encoding encoding = new UTF8Encoding();
var bytes = encoding.GetBytes(postedData);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = bytes.Length;
using (var newStream = request.GetRequestStream())
{
newStream.Write(bytes, 0, bytes.Length);
newStream.Close();
}
WebResponse res = request.GetResponse();
var redirect = res.Headers[outputHeader];
return redirect;
}Решение задачи: «Вывести заголовок Location при ответе от сервера 302»
textual
Листинг программы
public static string postlocation(string postedData, string postUrl)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(postUrl);
request.Method = "POST";
request.Proxy.Credentials = CredentialCache.DefaultCredentials;
UTF8Encoding encoding = new UTF8Encoding();
var bytes = encoding.GetBytes(postedData);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = bytes.Length;
request.AllowAutoRedirect = false;
using (var newStream = request.GetRequestStream())
{
newStream.Write(bytes, 0, bytes.Length);
newStream.Close();
}
System.Net.WebResponse res = request.GetResponse();
string redirect = String.Format(res.Headers["Location"]);
res.Close();
return redirect;
}