.NET 4.x Переадресация на URL при POST запросе - C#

Узнай цену своей работы

Формулировка задачи:

Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using System.Collections.Specialized;
  5. using System.Net;
  6. using System.IO;
  7. using System.Threading;
  8.  
  9. namespace ConsoleApplication1
  10. {
  11. class Program
  12. {
  13. static void Main(string[] args)
  14. {
  15. WebRequest request = WebRequest.Create([url]http://);[/url]
  16. request.Method = "POST";
  17. byte[] byteArray = Encoding.UTF8.GetBytes("Data");
  18. request.ContentType = "application/x-www-form-urlencoded";
  19. request.ContentLength = byteArray.Length;
  20. Stream dataStream = request.GetRequestStream();
  21. dataStream.Write(byteArray, 0, byteArray.Length);
  22. dataStream.Close();
  23. WebResponse response = request.GetResponse();
  24. dataStream = response.GetResponseStream();
  25. StreamReader reader = new StreamReader(dataStream);
  26. string responseFromServer = reader.ReadToEnd();
  27. Console.WriteLine(request.Address);
  28. reader.Close();
  29. dataStream.Close();
  30. response.Close();
  31. Console.WriteLine("Press any key to exit");
  32. Console.ReadKey();
  33. }
  34. }
  35. }
Как нужно изменить код чтобы получить именно только адрес страници на которую переадресовывает сервер после получения данных, без зарузки самой страци? И т.к. я только начинаю изучать C# желательно с коментариями...

Решение задачи: «.NET 4.x Переадресация на URL при POST запросе»

textual
Листинг программы
  1.         static Uri post(string url, string data)
  2.         {
  3.             var request = (HttpWebRequest)HttpWebRequest.Create(url);
  4.             request.Method = "POST";
  5.             request.ContentType = "application/x-www-form-urlencoded";
  6.             request.UserAgent = "Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.9.168 Version/11.51";
  7.             string command = @""+data;
  8.             byte[] bytes = Encoding.ASCII.GetBytes(command);
  9.             //request.AllowAutoRedirect = false;
  10.             request.ContentLength = bytes.Length;
  11.             using (var stream = request.GetRequestStream())
  12.             {
  13.                 stream.Write(bytes, 0, bytes.Length);
  14.             }
  15.             using (var stream = new StreamReader(request.GetResponse().GetResponseStream()))
  16.             {
  17.                 Console.WriteLine(stream.ReadToEnd());
  18.             }
  19.             Console.WriteLine("-------------------------------");
  20.             var ret = request.Address;
  21.             return ret;
  22.         }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.25 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы