/// <summary> /// Отправляет POST-запрос с Multipart/form данными. Загружает тело сообщения и возвращает его в виде текста. /// </summary> /// <param name="address">Адрес интернет-ресурса.</param> /// <param name="multipartData">Multipart/form данные, отправляемые HTTP-серверу.</param> /// <param name="cookies">Кукисы, отправляемые HTTP-серверу, или значение <see langword="null"/>.</param> /// <param name="proxy">Прокси-клиент, используемый для запроса, или значение <see langword="null"/>.</param> /// <returns>Если тело сообщения отсутствует, то будет возвращена пустая строка.</returns> /// <exception cref="System.ArgumentNullException">Значение параметра <paramref name="address"/> равно <see langword="null"/>.</exception> /// <exception cref="System.ArgumentException">Значение параметра <paramref name="address"/> не является абсолютным URI.</exception> /// <exception cref="System.ArgumentNullException">Значение параметра <paramref name="multipartData"/> равно <see langword="null"/>.</exception> /// <exception cref="xNet.Net.HttpException">Ошибка при работе с HTTP-протоколом.</exception> /// <exception cref="xNet.Net.ProxyException">Ошибка при работе с прокси-сервером.</exception> public static string Post(Uri address, MultipartDataCollection multipartData, CookieDictionary cookies = null, ProxyClient proxy = null) { using (HttpRequest request = new HttpRequest()) { if (cookies == null) { request.Cookies = new CookieDictionary(); } else { request.Cookies = cookies; } request.Proxy = proxy; request.KeepAlive = false; if (string.IsNullOrEmpty(HttpRequest.GlobalUserAgent)) { request.UserAgent = HttpHelper.RandomUserAgent(); } return request.Post(address, multipartData).ToText(); } }
/// <summary> /// Инициализирует новый экземпляр класса <see cref="StreamHttpContent"/>. /// </summary> /// <param name="multipartData">Multipart данные контента.</param> public MultipartHttpContent(MultipartDataCollection multipartData) { _multipartData = multipartData; }