веб-страница возврата ответа http - PullRequest
0 голосов
/ 19 января 2012

Извините за мое невежество с этой методологией, так как она несколько нова для меня.Я читал об этом как можно больше, но пока не смог решить эту проблему.

Я пытаюсь выполнить единый вход с поставщиком через сообщение http.Достаточно просто.Я делал это в прошлом, но обычно он возвращает URL-адрес, по которому я могу перенаправить пользователя.К сожалению, с этим вендором они возвращают всю страницу, HTML и все.Это типично?Если да, то является ли мое единственное решение опубликовать это в новом окне?

Для справки, вот мой код:

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(link);
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
byte[] postBytes = Encoding.UTF8.GetBytes(postString);
request.ContentLength = postBytes.Length;
Stream requestStream = request.GetRequestStream();
requestStream.Write(postBytes, 0, postBytes.Length);
requestStream.Close();
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
var responseStream = response.GetResponseStream();
var responseReader = new StreamReader(responseStream);
var responseString = responseReader.ReadToEnd();
responseReader.Close();
responseStream.Close();
response.Close();

Пока все выглядит нормально и нормально?

1 Ответ

0 голосов
/ 19 января 2012

Обычно запрос POST возвращает новую веб-страницу.Я бы подумал, что перенаправление было бы ненормальным случаем.

Вы довольно смутно относитесь к своему приложению, поэтому я не уверен, как вы захотите, чтобы возвращаемый HTML был показан пользователю.

Возможно, вы захотите проверить класс WebClient, который может значительно упростить ваш код.

        using (var client = new WebClient())
    {
        var resultBytes = client.UploadData(new Uri("http://example.com"), "POST", data);
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...