Бесплатные рефераты


В мире
Календарь новостей
« Ноя.2017
Пн.Вт.Ср.Чт.Пт.Сб.Вс.
  12345
6789101112
13141516171819
20212223242526
27282930   
ВНИМАНИЕ!!!
УВАЖАЕМЫЕ ПОЛЬЗОВАТЕЛИ!!!
Сайт поменял владельца и на нём грядут большие перемены.
Убедительная просьба не пользоваться покупкой рефератов через смс.
ДАННЫЙ СЕРВИС БОЛЬШЕ НЕ РАБОТАЕТ
Стоит вопрос об его удалении, дабы сделать рефераты бесплатными. Извините за неудобство и спасибо за понимание
Поиск реферата

Реферат, курсовая, контрольная, доклад на тему: Отправка запроса методом POST на сервер из .NET приложения

ВНИМАНИЕ! Работа на этой странице представлена для Вашего ознакомления в текстовом (сокращенном) виде. Для того, чтобы получить полностью оформленную работу в формате Word, со всеми сносками, таблицами, рисунками (вместо pic), графиками, приложениями, списком литературы и т.д., необходимо скачать работу.

Отправка запроса методом POST на сервер из .NET приложения

Христофоров Юрий

Задача: требуется из Windows .NET приложения отправить POST запрос на сервер и получить результат работы запрошенного методом POST скрипта. Предусмотреть ситуацию, при которой скрипт на сервере защищен Basic авторизацией.

Ниже приведен пример на C# для решения данной задачи.

C# код:

// необходимые библиотеки

using System;

using System.Web;

using System.Collections;

using System.Text;

using System.IO;

using System.Net;

using System.Data;

// ......

WebResponse result = null;

WebRequest req = null;

Stream newStream = null;

Stream ReceiveStream = null;

StreamReader sr = null;

try

{

 // Url запрашиваемого методом POST скрипта

 req = WebRequest.Create("http://www.servername.com/script.cgi");

 req.Method = "POST";

 req.Timeout = 120000;

 // эта строка необходима только при защите скрипта на сервере Basic авторизацией

 //req.Credentials = new NetworkCredential("login", "password");

 req.ContentType = "application/x-www-form-urlencoded";

 byte[] SomeBytes = null;

 // передаем список пар параметров / значений для запрашиваемого скрипта методом POST

 // в случае нескольких параметров необходимо использовать символ & для разделения параметров

 // в данном случае используется кодировка windows-1251 для Url кодирования спец. символов значения параметров

 SomeBytes = Encoding.GetEncoding(1251).GetBytes("ParamName1=" + HttpUtility.UrlEncode("ParamValue1", Encoding.GetEncoding(1251)));

 req.ContentLength = SomeBytes.Length;

 newStream = req.GetRequestStream();

 newStream.Write(SomeBytes, 0, SomeBytes.Length);

 newStream.Close();

 // считываем результат работы

 result = req.GetResponse();

 ReceiveStream = result.GetResponseStream();

 Encoding encode = Encoding.GetEncoding(1251);

 sr = new StreamReader( ReceiveStream, encode );

 Char[] read = new Char[256];

 int count = sr.Read( read, 0, 256 );

 string strOut = "";

 while (count > 0)

 {

  String str = new String(read, 0, count);

  strOut += str;

  count = sr.Read(read, 0, 256);

 }

 Console.WriteLine("Результат работы запрошенного методом POST скрипта: " + strOut);

}

catch (Exception ex)

{

 Console.WriteLine("Ошибка: "+ex.Message);

}

finally

{

 if (newStream != null)

  newStream.Close();

 if (ReceiveStream != null)

  ReceiveStream.Close();

 if (sr != null)

  sr.Close();

 if (result != null)

  result.Close();

}

Список литературы

Для подготовки данной работы были использованы материалы с сайта http://www.activex.net.ru/


ВНИМАНИЕ! Работа на этой странице представлена для Вашего ознакомления в текстовом (сокращенном) виде. Для того, чтобы получить полностью оформленную работу в формате Word, со всеми сносками, таблицами, рисунками (вместо pic), графиками, приложениями, списком литературы и т.д., необходимо А можно заказать оригинальный реферат
Опубликовано: 20.08.10 | [ + ]   [ - ]  
Просмотров: 108
Загрузок: 0
Рекомендуем
{dnmbottom}
БАНК РЕФЕРАТОВ содержит более 70 000 рефератов, курсовых, контрольных работ, сочинений и шпаргалок.