คำอธิบาย
ใช้ chrome.fileSystem
API เพื่อสร้าง อ่าน ไปยังส่วนต่างๆ และเขียนลงในระบบไฟล์ในเครื่องของผู้ใช้ API นี้ทำให้แอป Chrome อ่านและเขียนไปยังตำแหน่งที่ผู้ใช้เลือกได้ เช่น แอปแก้ไขข้อความจะใช้ API เพื่ออ่านและเขียนเอกสารในเครื่องได้ ความล้มเหลวทั้งหมดจะได้รับแจ้งผ่าน chrome.runtime.lastError
สิทธิ์
fileSystem
ความพร้อมใช้งาน
ประเภท
AcceptOption
พร็อพเพอร์ตี้
-
คำอธิบาย
string ไม่บังคับ
ส่วนนี้เป็นคำอธิบายข้อความที่ไม่บังคับสำหรับตัวเลือกนี้ หากไม่มี ระบบจะสร้างคําอธิบายให้โดยอัตโนมัติ ซึ่งโดยทั่วไปจะมีรายการส่วนขยายที่ถูกต้องเพิ่มเติม (เช่น "text/html" อาจขยายเป็น "*.html, *.htm")
-
ส่วนขยาย
string[] ไม่บังคับ
ส่วนขยายที่จะยอมรับ เช่น "jpg", "gif", "crx"
-
mimeTypes
string[] ไม่บังคับ
ประเภท Mime ที่จะยอมรับ เช่น "รูปภาพ/jpeg" หรือ "audio/*" mimeType หรือส่วนขยายรายการใดรายการหนึ่งต้องมีองค์ประกอบที่ถูกต้องอย่างน้อย 1 รายการ
ChooseEntryOptions
พร็อพเพอร์ตี้
-
ยอมรับ
AcceptOption[] ไม่บังคับ
รายการที่ไม่บังคับของตัวเลือกการยอมรับของโปรแกรมเปิดไฟล์นี้ ตัวเลือกแต่ละรายการจะปรากฏต่อผู้ใช้ปลายทางเป็นกลุ่มที่ไม่ซ้ำกัน
-
acceptsAllTypes
บูลีน ไม่บังคับ
กำหนดว่าจะยอมรับไฟล์ทุกประเภทหรือไม่ รวมถึงตัวเลือกที่ระบุในอาร์กิวเมนต์การยอมรับ ค่าเริ่มต้นคือ True หากไม่ได้ตั้งค่าช่องยอมรับหรือไม่มีรายการที่ถูกต้อง การดำเนินการนี้จะรีเซ็ตเป็น "จริง" เสมอ
-
acceptsMultiple
บูลีน ไม่บังคับ
เลือกว่าจะรับหลายไฟล์หรือไม่ วิธีนี้รองรับเฉพาะ OpenFile และ openWritableFile ระบบจะเรียก Callback ไปยัง chooseEntry ด้วยรายการหากตั้งค่าเป็น "จริง" ไม่เช่นนั้นระบบจะเรียกใช้ด้วยรายการเดียว
-
suggestedName
string ไม่บังคับ
ชื่อไฟล์ที่แนะนำที่จะแสดงต่อผู้ใช้เป็นชื่อเริ่มต้นที่จะอ่านหรือเขียน ขั้นตอนนี้ไม่บังคับ
-
ประเภท
ChooseEntryType ไม่บังคับ
ประเภทพรอมต์ที่จะแสดง ค่าเริ่มต้นคือ "openFile"
ChooseEntryType
ค่าแจกแจง
"openFile"
แจ้งให้ผู้ใช้เปิดไฟล์ที่มีอยู่และแสดงผล FileEntry เมื่อสำเร็จ ตั้งแต่ Chrome 31 เป็นต้นไป FileEntry จะเขียนได้ถ้าแอปพลิเคชันมี "write" สิทธิ์ภายใต้ "fileSystem" ไม่เช่นนั้น FileEntry จะเป็นแบบอ่านอย่างเดียว
"openWritableFile"
แจ้งให้ผู้ใช้เปิดไฟล์ที่มีอยู่และแสดงผล FileEntry ที่เขียนได้เมื่อดำเนินการสำเร็จ การเรียกใช้ที่ใช้ประเภทนี้จะล้มเหลวโดยมีข้อผิดพลาดรันไทม์หากแอปพลิเคชันไม่มี "write" สิทธิ์ในส่วน "fileSystem"
"saveFile"
แจ้งให้ผู้ใช้เปิดไฟล์ที่มีอยู่หรือไฟล์ใหม่ และแสดงผล FileEntry ที่เขียนได้เมื่อดำเนินการสำเร็จ การเรียกใช้ที่ใช้ประเภทนี้จะล้มเหลวโดยมีข้อผิดพลาดรันไทม์หากแอปพลิเคชันไม่มี "write" สิทธิ์ในส่วน "fileSystem"
"openDirectory"
แจ้งให้ผู้ใช้เปิดไดเรกทอรีและแสดงผล DirectoryEntry เมื่อทำสำเร็จ การเรียกที่ใช้ประเภทนี้จะล้มเหลวพร้อมข้อผิดพลาดรันไทม์หากแอปพลิเคชันไม่มี "ไดเรกทอรี" ภายใต้ "fileSystem" หากแอปพลิเคชันมีบรรทัด "เขียน" สิทธิ์ภายใต้ "fileSystem" จะทำให้ DirectoryEntry ที่ถูกส่งคืนสามารถเขียนได้ มิฉะนั้นจะมีสถานะอ่านอย่างเดียว ใหม่ใน Chrome 31
RequestFileSystemOptions
พร็อพเพอร์ตี้
-
volumeId
สตริง
รหัสของวอลุ่มที่ขอ
-
เขียนได้
บูลีน ไม่บังคับ
ระบบไฟล์ที่ขอควรเขียนได้หรือไม่ ค่าเริ่มต้นคืออ่านอย่างเดียว
Volume
พร็อพเพอร์ตี้
-
volumeId
สตริง
-
เขียนได้
boolean
VolumeListChangedEvent
พร็อพเพอร์ตี้
-
ชุด
เมธอด
chooseEntry()
chrome.fileSystem.chooseEntry(
options?: ChooseEntryOptions,
callback: function,
)
ขอให้ผู้ใช้เลือกไฟล์หรือไดเรกทอรี
พารามิเตอร์
-
ตัวเลือก
ChooseEntryOptions ไม่บังคับ
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(entry?: Entry, fileEntries?: FileEntry[]) => void
-
รายการ
รายการ ไม่บังคับ
-
fileEntries
FileEntry[] ไม่บังคับ
-
getDisplayPath()
chrome.fileSystem.getDisplayPath(
entry: Entry,
callback?: function,
)
รับเส้นทางที่แสดงของออบเจ็กต์ Entry เส้นทางที่แสดงจะขึ้นอยู่กับเส้นทางแบบเต็มของไฟล์หรือไดเรกทอรีในระบบไฟล์ในเครื่อง แต่อาจทำให้อ่านง่ายขึ้นเพื่อการแสดงผล
พารามิเตอร์
-
รายการ
รายการ
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(displayPath: string) => void
-
displayPath
สตริง
-
การคืนสินค้า
-
คำมั่นสัญญา<สตริง>
Chrome 117 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback
getVolumeList()
chrome.fileSystem.getVolumeList(
callback?: function,
)
แสดงผลรายการวอลุ่มที่พร้อมใช้งานสำหรับ requestFileSystem()
ต้องใช้สิทธิ์ "fileSystem": {"requestFileSystem"}
สำหรับไฟล์ Manifest ใช้ได้กับแอปคีออสก์ที่ทำงานในเซสชันคีออสก์เท่านั้น ในกรณีที่เกิดข้อผิดพลาด ระบบจะยกเลิกการกำหนด volumes
และตั้งค่า chrome.runtime.lastError
พารามิเตอร์
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(volumes?: Volume[]) => void
-
ชุด
ระดับเสียง[] ไม่บังคับ
-
การคืนสินค้า
-
Promise<Volume[] | ไม่ระบุ>
Chrome 117 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback
getWritableEntry()
chrome.fileSystem.getWritableEntry(
entry: Entry,
callback: function,
)
รับ 1 บทความที่เขียนได้จากรายการอื่น การเรียกใช้นี้จะล้มเหลวโดยมีข้อผิดพลาดรันไทม์หากแอปพลิเคชันไม่มี "write" ภายใต้ "fileSystem" หากรายการคือ DirectoryEntry การเรียกนี้จะล้มเหลวหากแอปพลิเคชันไม่มี "directory" ภายใต้ "fileSystem"
พารามิเตอร์
-
รายการ
รายการ
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(entry: Entry) => void
-
รายการ
รายการ
-
isRestorable()
chrome.fileSystem.isRestorable(
id: string,
callback?: function,
)
แสดงผลว่าแอปมีสิทธิ์กู้คืนรายการที่มีรหัสที่ระบุหรือไม่
พารามิเตอร์
-
id
สตริง
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(isRestorable: boolean) => void
-
isRestorable
boolean
-
การคืนสินค้า
-
Promise<boolean>
Chrome 117 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback
isWritableEntry()
chrome.fileSystem.isWritableEntry(
entry: Entry,
callback?: function,
)
รับข้อมูลว่ารายการนี้เขียนได้หรือไม่
พารามิเตอร์
-
รายการ
รายการ
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(isWritable: boolean) => void
-
isWritable
boolean
-
การคืนสินค้า
-
Promise<boolean>
Chrome 117 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback
requestFileSystem()
chrome.fileSystem.requestFileSystem(
options: RequestFileSystemOptions,
callback?: function,
)
ขอสิทธิ์เข้าถึงระบบไฟล์สำหรับวอลุ่มที่แสดงโดย options.volumeId
หากตั้งค่า options.writable
เป็น "จริง" ระบบไฟล์จะเขียนได้ มิฉะนั้นจะเป็นแบบอ่านอย่างเดียว ตัวเลือก writable
ต้องใช้สิทธิ์ "fileSystem": {"write"}
ในไฟล์ Manifest ใช้ได้กับแอปคีออสก์ที่ทำงานในเซสชันคีออสก์เท่านั้น สําหรับโหมดคีออสก์แบบเปิดใช้งานด้วยตนเอง กล่องโต้ตอบการยืนยันจะแสดงที่ด้านบนของหน้าต่างแอปที่ใช้งานอยู่ ในกรณีที่เกิดข้อผิดพลาด ระบบจะยกเลิกการกำหนด fileSystem
และตั้งค่า chrome.runtime.lastError
พารามิเตอร์
-
ตัวเลือก
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(fileSystem?: FileSystem) => void
-
fileSystem
FileSystem ไม่บังคับ
-
การคืนสินค้า
-
Promise<FileSystem | ไม่ระบุ>
Chrome 117 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback
restoreEntry()
chrome.fileSystem.restoreEntry(
id: string,
callback: function,
)
แสดงรายการไฟล์ที่มีรหัสที่กำหนดหากกู้คืนได้ การเรียกใช้นี้จะล้มเหลวโดยมีข้อผิดพลาดรันไทม์
พารามิเตอร์
-
id
สตริง
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(entry: Entry) => void
-
รายการ
รายการ
-
retainEntry()
chrome.fileSystem.retainEntry(
entry: Entry,
)
แสดงผลรหัสที่สามารถส่งผ่านไปยังrecoveryEntry เพื่อให้เข้าถึงรายการไฟล์ที่กำหนดอีกครั้ง ระบบจะเก็บรักษาเฉพาะรายการที่ใช้งานล่าสุด 500 รายการเท่านั้น โดยนับจํานวนการเรียกเพื่อเก็บรักษาและรายการกู้คืนเป็น "ใช้งานอยู่" หากแอปมี "retainEntries" ภายใต้ "fileSystem" ระบบจะเก็บรักษารายการไว้โดยไม่มีกำหนด ไม่เช่นนั้น ระบบจะเก็บรักษารายการขณะแอปทำงานอยู่และขณะรีสตาร์ทเท่านั้น
พารามิเตอร์
-
รายการ
รายการ
การคืนสินค้า
-
สตริง
กิจกรรม
onVolumeListChanged
chrome.fileSystem.onVolumeListChanged.addListener(
callback: function,
)
เรียกใช้เมื่อมีการเปลี่ยนแปลงรายการวอลุ่มที่ใช้ได้
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(event: VolumeListChangedEvent) => void
-
event
-