Как отправить массив байтов с помощью метода HTTP PUT? Метод AddFile
класса RestRequest
отправляет дополнительные заголовки. Метод AddParameter
принимает тип Object
.
Как я это делаю:
byte[] data;
using (var ms = new MemoryStream())
{
Serializer.Serialize(ms, query);
data = ms.ToArray();
ms.Close();
}
var client = new RestClient(ServerPath);
var request = new RestRequest(RequestPath, Method.PUT);
request.AddFile("stream", x => new MemoryStream(data), string.Empty);
client.ExecuteAsync(request, responce => Debug.WriteLine(responce.Content));
Но на стороне сервера я вижу дополнительные заголовки
-------------------------------28947758029299 Content-Disposition: form-data; имя="поток"; filename="" Content-Type: application/octet-stream [НЕОБРАБОТАННЫЕ ДАННЫЕ ЗДЕСЬ] -------------------------------28947758029299 --
Дополнительные заголовки делают запрос нечитаемым. Что я делаю неправильно?
AddFile
предполагает, что на самом деле ожидается multi-part , но это не соответствует указанному типу/расположению контента. Например, это так же просто, какWebClient
сclient.UploadData(address, "PUT", data);
? - person Marc Gravell   schedule 25.02.2013