當我使用帶有Typescript的Socket.IO傳輸文件對象(File
interface)時,該文件在接收端變爲ArrayBuffer
。使用Socket.IO傳輸的文件對象變成'ArrayBuffer'?
有沒有辦法將ArrayBuffer
轉換回File
,或者我不應該使用socket io發送整個文件對象(分別發送名稱,數據,MIME類型)?
當我使用帶有Typescript的Socket.IO傳輸文件對象(File
interface)時,該文件在接收端變爲ArrayBuffer
。使用Socket.IO傳輸的文件對象變成'ArrayBuffer'?
有沒有辦法將ArrayBuffer
轉換回File
,或者我不應該使用socket io發送整個文件對象(分別發送名稱,數據,MIME類型)?
傳遞ArrayBuffer
至Blob
或File
構造
const file = new Blob([ab])
const file = new File([ab], "filename.ext", {type:/* valid MIME type */})
我試過了,'var file:File = new Blob(arraybuffer);'但是,我得到'Blob'類缺少'file'需要的'lastModifiedDate'的錯誤,所以無法轉換。如果我強制使用類型轉換,我得到錯誤:'core.es5.js:1084錯誤類型錯誤:無法構造'Blob':Iterator getter不可調用。' –
錯過了更新,將嘗試第二行,謝謝! –
如果你的應用程序需要'lastModifiedDate',你可以在'File()'構造函數 – guest271314
文件只是一個特殊的斑點,ArrayBuffer成團塊很容易。 –