如何從c#中的byte []或Base64String獲取內容類型(MIME類型)? (Asp.Net Core)從C#中的字節[]獲取內容類型
我的web api正在接收在JSON對象內發送的文件。該文件在Base64String中編碼。我的第一步是將這個base64string轉換爲一個字節數組,然後執行驗證。其中一個驗證是檢查它是否是有效的文件。爲此,我需要檢查其內容類型。
private bool validateContent (byte[] content) {
//Get mime content type from content
}
很容易被欺騙'內容Type'應作爲發送一個頭。它不會在數據本身。你的JSON對象是什麼樣的? –
@DanWilson:我認爲他希望從任何以字節形式發送的數據(即,像excel xlsx,xls,圖像這樣的二進制文件並且不信任客戶端發送什麼等)獲得mimetype,即客戶端通常發送壓縮文件作爲'application/octet-stream',就像一些郵件客戶端,它什麼都不知道它真的是什麼類型) – Tseng
我知道,我說這是不可能從字節流單獨的,除非你想掃描文件類型標記在數據,這是不可靠的和容易出錯的。 http://stackoverflow.com/questions/1654846/in-c-how-can-i-know-the-file-type-from-a-byte –