我想製作一個web應用程序,它將從遠程服務器加載一個頁面,但允許用戶從本地驅動器上的文件播放音頻(不是從遠程服務器)。我能夠得到這個工作,但我也需要它來保存用戶爲後續訪問所做的事情。例如:用戶加載一個頁面,點擊一個「選擇文件」按鈕,選擇一個mp3並播放它。用戶然後關閉瀏覽器,再次打開它,返回到頁面,並且能夠播放相同的音頻而無需再次選擇它。跨頁面加載本地音頻文件數據在HTML5中
據我所知,音頻播放與保存用戶的選擇是分開的,但在這種情況下,人們似乎要指定另一個。
我能夠獲得選擇和播放功能,與此有關的工作:
<html><body>
<script type='text/javascript'>
function handleFiles(files){
var file = window.URL.createObjectURL(files[0]);
document.getElementById('audioPlayer').src = file;
}
</script>
<audio id='audioPlayer' controls ></audio>
<input type='file' id='selectedFile'
onchange='handleFiles(this.files)' />
</body></html>
...但我不知道如何選擇的文件存儲數據的方式,我可以自動在下次訪問時加載它。我可以使用什麼來存儲該文件位置(甚至是整個文件本身),以便我仍然可以播放音頻,而無需用戶再次選擇文件?
我有點懷疑,保存在本地文件的URL以某種方式可能無法出於安全考慮,因爲自動播放從本地文件系統中的文件,而無需用戶交互可能是個壞消息。
無賴,聽起來好像沒有可行的選擇。用戶上傳音樂可能存在版權問題,因此無法使用。 localStorage上的低存儲限制也是如此。從更多的閱讀來看,它聽起來像FileSystem API將做我所需要的,但它現在只在Chrome中。 – user605331