ПЕРЕЛІК ДИСЦИПЛІН:
  • Адміністративне право
  • Арбітражний процес
  • Архітектура
  • Астрологія
  • Астрономія
  • Банківська справа
  • Безпека життєдіяльності
  • Біографії
  • Біологія
  • Біологія і хімія
  • Ботаніка та сільське гос-во
  • Бухгалтерський облік і аудит
  • Валютні відносини
  • Ветеринарія
  • Військова кафедра
  • Географія
  • Геодезія
  • Геологія
  • Етика
  • Держава і право
  • Цивільне право і процес
  • Діловодство
  • Гроші та кредит
  • Природничі науки
  • Журналістика
  • Екологія
  • Видавнича справа та поліграфія
  • Інвестиції
  • Іноземна мова
  • Інформатика
  • Інформатика, програмування
  • Юрист по наследству
  • Історичні особистості
  • Історія
  • Історія техніки
  • Кибернетика
  • Комунікації і зв'язок
  • Комп'ютерні науки
  • Косметологія
  • Короткий зміст творів
  • Криміналістика
  • Кримінологія
  • Криптология
  • Кулінарія
  • Культура і мистецтво
  • Культурологія
  • Російська література
  • Література і російська мова
  • Логіка
  • Логістика
  • Маркетинг
  • Математика
  • Медицина, здоров'я
  • Медичні науки
  • Міжнародне публічне право
  • Міжнародне приватне право
  • Міжнародні відносини
  • Менеджмент
  • Металургія
  • Москвоведение
  • Мовознавство
  • Музика
  • Муніципальне право
  • Податки, оподаткування
  •  
    Бесплатные рефераты
     

     

     

     

     

     

         
     
    Відправлення запиту методом POST на сервер з. NET програми
         

     

    Інформатика, програмування

    Відправлення запиту методом 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/

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

     

     

     

     

     

     

     
     
     
      Все права защищены. Reff.net.ua - українські реферати ! DMCA.com Protection Status