iT邦幫忙

3

Chrome瀏覽器限制上傳檔案類型

  • 分享至 

  • xImage

想請問一下我想在我的chrome瀏覽器,在瀏覽某些網站時,設定上傳檔案,不能上傳bmp或png副檔名的檔案,因為怕自己會傳錯。我該怎麼解決這個問題,我有查到好像兩種方法,一種是用寫json去管控chrome,另一種方法好像是找chrome的擴充程式,但我不會寫json,也找不到類似限制上傳檔案類型的擴充程式

迷路 iT邦研究生 5 級 ‧ 2025-02-11 08:42:50 檢舉
這種限制不是網站開發者開做的嗎?怎麼會是瀏覽者要煩惱?
.
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

5
Gary
iT邦好手 1 級 ‧ 2025-02-11 14:21:21
最佳解答

方法一.

用 Chrome 企業原則(手動設定 JSON)
這種方法適合管理整個Chrome行為,但需手動編輯JSON,設定Chrome原則。
建立 JSON 設定檔
在 C:\Program Files\Google\Chrome\Application(Windows)或 /Library/Managed Preferences(Mac) 建立一個 policies.json 檔案,然後加入這些內容:

{
"URLBlocklist": ["xxx.com"],
"UploadRestrictions": {
"patterns": [".bmp", ".png"],
"message": "禁止上傳 BMP 和 PNG 檔案"
}
}
這裡的 xxx.com 改成你要管控的網站。

載入 Chrome 原則
在 Chrome 網址列輸入 chrome://policy/ 重新載入原則
當你在指定的網站上傳 .bmp 或 .png 時,Chrome 會擋住上傳。
https://ithelp.ithome.com.tw/upload/images/20250211/20025481IZORrq2fDo.png

方法二.

自己寫一個擴充程式到Chrome,首先建一個Folder,裏面新建一個manifest.json
{
"manifest_version": 3,
"name": "Upload Restriction",
"version": "1.0",
"description": "限制上傳特定副檔名的檔案",
"permissions": ["scripting", "activeTab"],
"host_permissions": ["<all_urls>"],
"background": {
"service_worker": "background.js"
}
}

新增 background.js

chrome.webRequest.onBeforeRequest.addListener(
function(details) {
const forbiddenExtensions = [".bmp", ".png"];
if (details.url) {
for (let ext of forbiddenExtensions) {
if (details.url.endsWith(ext)) {
return { cancel: true };
}
}
}
return {};
},
{ urls: ["<all_urls>"] },
["blocking"]
);

載入擴充程式
開啟Chrome進到 chrome://extensions/
載入未封裝擴充功能
選擇你的 block_upload 資料夾
這樣,每當你試圖上傳 .bmp 或 .png,Chrome 會阻擋該請求。

上述兩種方式給你參考!

Gary iT邦好手 1 級 ‧ 2025-02-12 10:58:49 檢舉

如果需要我可以分享已經做好的的程式碼檔案給你!
圖一.
https://ithelp.ithome.com.tw/upload/images/20250212/20025481sTBsv8OmEq.png

圖二.
https://ithelp.ithome.com.tw/upload/images/20250212/200254812os9ZfWBxr.png

真棒的解答,收藏先

我要發表回答

立即登入回答