WebClient.UploadData Метод

Определение

Передает буфер данных ресурсу с заданным URI.

Перегрузки

UploadData(String, Byte[])

Передает буфер данных ресурсу, заданному с помощью URI.

UploadData(Uri, Byte[])

Передает буфер данных ресурсу, заданному с помощью URI.

UploadData(String, String, Byte[])

Выгружает буфер данных на указанный ресурс с помощью указанного метода.

UploadData(Uri, String, Byte[])

Выгружает буфер данных на указанный ресурс с помощью указанного метода.

UploadData(String, Byte[])

Исходный код:
WebClient.cs
Исходный код:
WebClient.cs
Исходный код:
WebClient.cs

Передает буфер данных ресурсу, заданному с помощью URI.

public:
 cli::array <System::Byte> ^ UploadData(System::String ^ address, cli::array <System::Byte> ^ data);
public byte[] UploadData (string address, byte[] data);
member this.UploadData : string * byte[] -> byte[]
Public Function UploadData (address As String, data As Byte()) As Byte()

Параметры

address
String

URI ресурса, которому передаются данные.

data
Byte[]

Буфер данных, передаваемый ресурсу.

Возвращаемое значение

Byte[]

Массив значений типа Byte, содержащий основной текст ответа ресурса.

Исключения

Параметр address имеет значение null.

URI, образованный объединением BaseAddress и address, является недопустимым.

-или-

data имеет значение null.

-или-

Ошибка, произошедшая при отправке данных.

-или-

Сервер, на котором расположен ресурс, не отвечает.

Примеры

В следующем примере кода строка, введенная из консоли, преобразуется Byte в массив и отправляет массив на указанный сервер с помощью UploadData. Любой ответ от сервера отображается в консоли.

Console::Write( "\nPlease enter the URI to post data to: " );
String^ uriString = Console::ReadLine();
// Create a new WebClient instance.
WebClient^ myWebClient = gcnew WebClient;
Console::WriteLine( "\nPlease enter the data to be posted to the URI {0}:", uriString );
String^ postData = Console::ReadLine();
// Apply ASCII Encoding to obtain the String* as a Byte array.
array<Byte>^ postArray = Encoding::ASCII->GetBytes( postData );
Console::WriteLine( "Uploading to {0} ...", uriString );
myWebClient->Headers->Add( "Content-Type", "application/x-www-form-urlencoded" );

//UploadData implicitly sets HTTP POST as the request method.
array<Byte>^responseArray = myWebClient->UploadData( uriString, postArray );

// Decode and display the response.
Console::WriteLine( "\nResponse received was: {0}", Encoding::ASCII->GetString( responseArray ) );
    Console.Write("\nPlease enter the URI to post data to : ");
    string uriString = Console.ReadLine();
    // Create a new WebClient instance.
    WebClient myWebClient = new WebClient();
    Console.WriteLine("\nPlease enter the data to be posted to the URI {0}:",uriString);
    string postData = Console.ReadLine();
    // Apply ASCII Encoding to obtain the string as a byte array.
    byte[] postArray = Encoding.ASCII.GetBytes(postData);
    Console.WriteLine("Uploading to {0} ...",  uriString);							
 myWebClient.Headers.Add("Content-Type","application/x-www-form-urlencoded");

    //UploadData implicitly sets HTTP POST as the request method.
    byte[] responseArray = myWebClient.UploadData(uriString,postArray);

    // Decode and display the response.
    Console.WriteLine("\nResponse received was :{0}", Encoding.ASCII.GetString(responseArray));
Console.Write(ControlChars.Cr + "Please enter the URI to post data to : ")
Dim uriString As String = Console.ReadLine()

' Create a new WebClient instance.
Dim myWebClient As New WebClient()
Console.WriteLine(ControlChars.Cr + "Please enter the data to be posted to the URI {0}:", uriString)
Dim postData As String = Console.ReadLine()
' Apply ASCII Encoding to obtain the string as a byte array.
Dim postArray As Byte() = Encoding.ASCII.GetBytes(postData)
Console.WriteLine("Uploading to {0} ...", uriString)
myWebClient.Headers.Add("Content-Type", "application/x-www-form-urlencoded")

' UploadData implicitly sets HTTP POST as the request method.
Dim responseArray As Byte() = myWebClient.UploadData(uriString, postArray)

' Decode and display the response.
Console.WriteLine(ControlChars.Cr + "Response received was :{0}", Encoding.ASCII.GetString(responseArray))

Комментарии

Метод UploadData отправляет буфер данных в ресурс.

Этот метод использует команду STOR для отправки ресурса FTP. Для ресурса HTTP используется метод POST. Если сервер не понимает базовый запрос, то его действия определяются базовыми классами протоколов. Как правило, WebException возникает исключение с заданным свойством Status , указывающим на ошибку.

Метод UploadData отправляет содержимое data на сервер без кодирования. Этот метод блокирует при отправке данных. Чтобы продолжить выполнение во время ожидания ответа сервера, используйте один из UploadDataAsync методов .

BaseAddress Если свойство не является пустой строкой ("") и address не содержит абсолютный URI, то должен быть относительным URI, address который объединяется с BaseAddress для формирования абсолютного URI запрошенных данных. QueryString Если свойство не является пустой строкой, оно добавляется к address.

Примечание

Данный член генерирует сведения трассировки, если в приложении включена трассировка сети. Дополнительные сведения см. в статье Трассировка сети в платформа .NET Framework.

Применяется к

UploadData(Uri, Byte[])

Исходный код:
WebClient.cs
Исходный код:
WebClient.cs
Исходный код:
WebClient.cs

Передает буфер данных ресурсу, заданному с помощью URI.

public:
 cli::array <System::Byte> ^ UploadData(Uri ^ address, cli::array <System::Byte> ^ data);
public byte[] UploadData (Uri address, byte[] data);
member this.UploadData : Uri * byte[] -> byte[]
Public Function UploadData (address As Uri, data As Byte()) As Byte()

Параметры

address
Uri

URI ресурса, которому передаются данные.

data
Byte[]

Буфер данных, передаваемый ресурсу.

Возвращаемое значение

Byte[]

Массив значений типа Byte, содержащий основной текст ответа ресурса.

Исключения

Параметр address имеет значение null.

URI, образованный объединением BaseAddress и address, является недопустимым.

-или-

data имеет значение null.

-или-

Ошибка, произошедшая при отправке данных.

-или-

Сервер, на котором расположен ресурс, не отвечает.

Комментарии

Метод UploadData отправляет буфер данных в ресурс.

Этот метод использует команду STOR для отправки ресурса FTP. Для ресурса HTTP используется метод POST. Если сервер не понимает базовый запрос, то его действия определяются базовыми классами протоколов. Как правило, WebException возникает исключение с заданным свойством Status , указывающим на ошибку.

Метод UploadData отправляет содержимое data на сервер без кодирования. Этот метод блокирует при отправке данных. Чтобы продолжить выполнение во время ожидания ответа сервера, используйте один из UploadDataAsync методов .

BaseAddress Если свойство не является пустой строкой ("") и address не содержит абсолютный URI, то должен быть относительным URI, address который объединяется с BaseAddress для формирования абсолютного URI запрошенных данных. QueryString Если свойство не является пустой строкой, оно добавляется к address.

Примечание

Данный член генерирует сведения трассировки, если в приложении включена трассировка сети. Дополнительные сведения см. в статье Трассировка сети в платформа .NET Framework.

Применяется к

UploadData(String, String, Byte[])

Исходный код:
WebClient.cs
Исходный код:
WebClient.cs
Исходный код:
WebClient.cs

Выгружает буфер данных на указанный ресурс с помощью указанного метода.

public:
 cli::array <System::Byte> ^ UploadData(System::String ^ address, System::String ^ method, cli::array <System::Byte> ^ data);
public byte[] UploadData (string address, string? method, byte[] data);
public byte[] UploadData (string address, string method, byte[] data);
member this.UploadData : string * string * byte[] -> byte[]
Public Function UploadData (address As String, method As String, data As Byte()) As Byte()

Параметры

address
String

URI ресурса, которому передаются данные.

method
String

Метод HTTP, используемый для передачи данных ресурсу. Если значение пустое, для HTTP по умолчанию используется метод POST, а для FTP — STOR.

data
Byte[]

Буфер данных, передаваемый ресурсу.

Возвращаемое значение

Byte[]

Массив значений типа Byte, содержащий основной текст ответа ресурса.

Исключения

Параметр address имеет значение null.

URI, образованный объединением BaseAddress и address, является недопустимым.

-или-

data имеет значение null.

-или-

Ошибка, произошедшая при выгрузке данных.

-или-

Сервер, на котором расположен ресурс, не отвечает.

Примеры

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

String^ uriString;
Console::Write( "\nPlease enter the URI to post data to {for example, http://www.contoso.com}: " );
uriString = Console::ReadLine();

// Create a new WebClient instance.
WebClient^ myWebClient = gcnew WebClient;
Console::WriteLine( "\nPlease enter the data to be posted to the URI {0}:", uriString );
String^ postData = Console::ReadLine();
myWebClient->Headers->Add( "Content-Type", "application/x-www-form-urlencoded" );

// Displays the headers in the request
Console::Write( "Resulting Request Headers: ");
Console::WriteLine(myWebClient->Headers);

// Apply ASCII Encoding to obtain the String^ as a Byte array.
array<Byte>^ byteArray = Encoding::ASCII->GetBytes( postData );
Console::WriteLine( "Uploading to {0} ...", uriString );
// Upload the input String* using the HTTP 1.0 POST method.
array<Byte>^responseArray = myWebClient->UploadData( uriString, "POST", byteArray );
// Decode and display the response.
Console::WriteLine( "\nResponse received was {0}",
   Encoding::ASCII->GetString( responseArray ) );
   string uriString;
       Console.Write("\nPlease enter the URI to post data to {for example, http://www.contoso.com} : ");
       uriString = Console.ReadLine();

       // Create a new WebClient instance.
       WebClient myWebClient = new WebClient();
       Console.WriteLine("\nPlease enter the data to be posted to the URI {0}:",uriString);
       string postData = Console.ReadLine();
       myWebClient.Headers.Add("Content-Type","application/x-www-form-urlencoded");

 // Display the headers in the request
       Console.Write("Resulting Request Headers: ");
       Console.WriteLine(myWebClient.Headers.ToString());
       
       // Apply ASCII Encoding to obtain the string as a byte array.

       byte[] byteArray = Encoding.ASCII.GetBytes(postData);
       Console.WriteLine("Uploading to {0} ...",  uriString);						
       // Upload the input string using the HTTP 1.0 POST method.
       byte[] responseArray = myWebClient.UploadData(uriString,"POST",byteArray);
       
       // Decode and display the response.
       Console.WriteLine("\nResponse received was {0}",
       Encoding.ASCII.GetString(responseArray));
                 
Dim uriString As String
Console.Write(ControlChars.Cr + "Please enter the URI to post data to{for example, http://www.contoso.com} : ")
uriString = Console.ReadLine()

' Create a new WebClient instance.
Dim myWebClient As New WebClient()
Console.WriteLine(ControlChars.Cr + "Please enter the data to be posted to the URI {0}:", uriString)
Dim postData As String = Console.ReadLine()
myWebClient.Headers.Add("Content-Type", "application/x-www-form-urlencoded")

' Display the headers in the request
Console.Write("Resulting Request Headers: ")
Console.Writeline(myWebClient.Headers.ToString())

' Apply ASCII Encoding to obtain the string as a byte array.
Dim byteArray As Byte() = Encoding.ASCII.GetBytes(postData)
Console.WriteLine("Uploading to {0} ...", uriString)
' Upload the input string using the HTTP 1.0 POST method.
Dim responseArray As Byte() = myWebClient.UploadData(uriString, "POST", byteArray)
' Decode and display the response.
Console.WriteLine(ControlChars.Cr + "Response received was :{0}", Encoding.ASCII.GetString(responseArray))

Комментарии

Метод UploadData отправляет буфер данных в ресурс с помощью метода HTTP, указанного в параметре method , и возвращает любой ответ от сервера. Этот метод блокирует при отправке данных. Чтобы продолжить выполнение во время ожидания ответа сервера, используйте один из UploadDataAsync методов .

Метод UploadData отправляет содержимое data на сервер без кодирования.

method Если параметр указывает команду, которая не понятна серверу, базовые классы протоколов определяют, что происходит. Как правило, WebException возникает исключение с заданным свойством Status , указывающим на ошибку.

BaseAddress Если свойство не является пустой строкой ("") и address не содержит абсолютный URI, то должен быть относительным URI, address который объединяется с BaseAddress для формирования абсолютного URI запрошенных данных. QueryString Если свойство не является пустой строкой, оно добавляется к address.

Примечание

Данный член генерирует сведения трассировки, если в приложении включена трассировка сети. Дополнительные сведения см. в статье Трассировка сети в платформа .NET Framework.

Применяется к

UploadData(Uri, String, Byte[])

Исходный код:
WebClient.cs
Исходный код:
WebClient.cs
Исходный код:
WebClient.cs

Выгружает буфер данных на указанный ресурс с помощью указанного метода.

public:
 cli::array <System::Byte> ^ UploadData(Uri ^ address, System::String ^ method, cli::array <System::Byte> ^ data);
public byte[] UploadData (Uri address, string? method, byte[] data);
public byte[] UploadData (Uri address, string method, byte[] data);
member this.UploadData : Uri * string * byte[] -> byte[]
Public Function UploadData (address As Uri, method As String, data As Byte()) As Byte()

Параметры

address
Uri

URI ресурса, которому передаются данные.

method
String

Метод HTTP, используемый для передачи данных ресурсу. Если значение пустое, для HTTP по умолчанию используется метод POST, а для FTP — STOR.

data
Byte[]

Буфер данных, передаваемый ресурсу.

Возвращаемое значение

Byte[]

Массив значений типа Byte, содержащий основной текст ответа ресурса.

Исключения

Параметр address имеет значение null.

URI, образованный объединением BaseAddress и address, является недопустимым.

-или-

data имеет значение null.

-или-

Ошибка, произошедшая при выгрузке данных.

-или-

Сервер, на котором расположен ресурс, не отвечает.

Комментарии

Метод UploadData отправляет буфер данных в ресурс с помощью метода HTTP, указанного в параметре method , и возвращает любой ответ от сервера. Этот метод блокирует передачу данных. Чтобы продолжить выполнение в ожидании ответа сервера, используйте один из UploadDataAsync методов.

Метод UploadData отправляет содержимое data на сервер без его кодировки.

method Если параметр указывает глагол, который не распознается сервером, базовые классы протоколов определяют, что происходит. Как правило, возникает исключение со свойством , WebException заданным Status для указания ошибки.

BaseAddress Если свойство не является пустой строкой ("") и address не содержит абсолютный URI, должен быть относительным URI, address объединенным с BaseAddress для формирования абсолютного URI запрошенных данных. QueryString Если свойство не является пустой строкой, оно добавляется к address.

Примечание

Данный член генерирует сведения трассировки, если в приложении включена трассировка сети. Дополнительные сведения см. в статье Трассировка сети в платформа .NET Framework.

Применяется к