2016-01-21 44 views
4

我有一個簡單的HTML文件上傳代碼片段,也適用於iOS。然而,我的問題是,上傳的文件的文件名將永遠是'image.jpeg'。有沒有辦法獲得原始文件名 - 即「IMG_0001.jpg」呢?主要問題是,如果我選擇了2個文件,它們的名稱都是'image.jpeg',而不是它們的唯一名稱。iOS文件上傳 - 原文件名

+0

你能分享這個代碼嗎? – induprakash

+0

我正在使用ng-file-upload。 http://jsfiddle.net/danialfarid/s8kc7wg0/400/(降檔) – Tamas

+0

你應該能夠得到'$ scope'原來的文件名,並把它傳遞給服務器的請求一起:'$ scope.filename = $ scope.file.name;' –

回答

2

Safari瀏覽器在iOS上總會讓上傳的文件image.jpeg的名字,想必對安全/隱私的目的。您需要爲這些文件生成自己的名稱,對於上傳的文件來說這是一個不錯的主意:您從不想過多地信任客戶端。

如果您在iOS目標不僅僅是更多的Safari瀏覽器,你仍然需要,因爲它是合理的,人們可能會上傳多個文件具有相同的名稱,但原來位於不同的目錄來處理這種情況。

+0

所以我認爲當您將文件導出到計算機時,這些文件名也會以某種方式生成?或者操作系統允許訪問「原始」文件名? – Tamas

+0

@Tamas iOS不允許通過'input [type = field]'訪問原始文件名。將照片從插入計算機的iOS設備導出時,必須先信任計算機,然後計算機才能訪問文件名 –