2017-09-18 15 views
1

ReadAsByteArrayAsync()で取り除かれたオブジェクトResultは、アップロードされたものとは異なるファイルを作成します。HttContent.ReadAsByteArray()。元のデータと異なる結果

public static HttpResponseMessage UploadVideo(HttpRequestMessage Request) {  
     byte[] data = Request.Content.ReadAsByteArrayAsync().Result; 
     BinaryWriter writer = new BinaryWriter(File.Open(@"D:/dev/test_file.mp4")); 
     BinaryWriter writer = new BinaryWriter(File.Open(name, FileMode.OpenOrCreate)); 
      writer.Write(data); 
      writer.Flush(); 
      writer.Close(); 
     return new HttpResponseMessage(HttpStatusCode.Accepted); 
    } 

このオリジナルビデオファイルのテキストビュー:

は、ここでは、コードです。 enter image description here

この は()。 enter image description here

それはそれはいくつかの余分な文字列で来たことを除いて存在しているすべての生データのように思える結果ReadAsByteArrayAsyncからアップロードされたファイルです。なぜこれが起こっているのか、元のファイルを取得する方法を誰でも説明できますか?

おかげ

+0

1つは応答全体です。 – BugFinder

+0

Content.ReadAsByteArray()。Resultがリクエスト全体を返す場合、どのようにしてコンテンツにアクセスできますか? – Fenix

答えて

1

ここでの問題は、あなたが着信要求と、元のファイルを比較してみてくださいということです。現在のところ、アップロードリクエストはマルチパート形式です。これをチェックしてください:https://stackoverflow.com/a/15680783/5902888

関連する問題