[ad_1]
Saya mendapatkan kesalahan HTTP 415 Jenis Media Tidak Didukung di HttpResponseMessage.
Bagaimana cara agar kode sisi server berfungsi?
HTTPClient digunakan untuk memposting data array byte sebagai berikut…
menggunakan(HttpClient c=HttpClient baru()
{
c.DefaultRequestHeader.Accept.Add(new MediaTypeWithQualityHeaderValue(“application/octet-stream)
byte[] Data=byte baru { 0x00, 0x01, 0x02… };
HttpResponseMessage r=menunggu c.PostAsync(“http://abc.com/api/File/Filename”, new ByteArrayContent(Data);
if(r.IssuccessStatusCode) mengembalikan nilai true;
kembali salah;
}
Sisi Server (MVC/Razor) menerima array byte sebagai berikut
[HttpPost(“{Filename}”)]
Tugas async publik
{
MemoryStream ms=new MemoryStream((int)Request.Body.Length);
menunggu Permintaan.Body.CopyToAsync(ms);
byte[] b=ms.ToArray(); ms.close();
File.WriteAllBytesAsync(“Data.bin”, b);
kembali b.Panjang;
}
Apa yang saya coba:
Dikompilasi di bawah Visual Studio 2017 yang berjalan pada workstation Windows 10 Pro
Solusi 1
Anda dapat melakukannya sesederhana ini
[HttpPost] public void Post(byte[] bytes) { //your code }
Web API menangani array byte sebagai parameter input dengan cukup baik
[ad_2]
コメント