亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

上傳前如何用javascript檢查MIME文件類型?

上傳前如何用javascript檢查MIME文件類型?

MMTTMM 2019-06-25 16:49:25
上傳前如何用javascript檢查MIME文件類型?我讀過這,這個和這,這個似乎可以在客戶端使用javascript檢查文件MIME類型的問題?,F在,我知道真正的驗證仍然必須在服務器端進行。我希望執行客戶端檢查,以避免不必要的服務器資源浪費。為了測試是否可以在客戶端執行此操作,我更改了JPEG測試文件.png并選擇要上載的文件。在發送文件之前,我使用javascript控制臺查詢文件對象:document.getElementsByTagName('input')[0].files[0];這就是我在Chrome 28.0上得到的:文件{webkitRelativePath:“,lastModifiedDate:2012年10月16日10:00 GMT+0000(UTC),名稱:”test.png“,鍵入:”Image/png“,大?。?00055…}它顯示類型為image/png這似乎表明檢查是基于文件擴展名完成的,而不是MIME類型。我嘗試了Firefox22.0,它給了我同樣的結果。但根據W3C規范, MIME嗅探應該執行。我說的對嗎?目前沒有辦法用javascript檢查MIME類型嗎?還是我遺漏了什么?
查看完整描述

3 回答

?
婷婷同學_

TA貢獻1844條經驗 獲得超8個贊

如果您只想檢查上傳的文件是否是圖像,可以嘗試將其加載到<img>為任何錯誤回調標記一個檢查。

例子:

var input = document.getElementsByTagName('input')[0];var reader = new FileReader();reader.onload = function (e) {
    imageExists(e.target.result, function(exists){
        if (exists) {

            // Do something with the image file.. 

        } else {

            // different file format

        }
    });};reader.readAsDataURL(input.files[0]);function imageExists(url, callback) {
    var img = new Image();
    img.onload = function() { callback(true); };
    img.onerror = function() { callback(false); };
    img.src = url;}


查看完整回答
反對 回復 2019-06-25
  • 3 回答
  • 0 關注
  • 2295 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號