2012-10-19 99 views
0

我有其中用戶已經從服務器上像這樣的圖像列表的Web應用程序:HTML 5如何拖放到服務器

<div class="uncat"> 
     <img src="/static/media/images/2012/1019/zKGsa.jpg" id="12"/> 
     </div> 
     <div style="float:left;"><a href="/delete/12/">x</a></div> 

     <div class="uncat"> 
     <img src="/static/media/images/2012/1019/vk5au.jpg" id="11"/> 
     </div> 
     <div style="float:left;"><a href="/delete/11/">x</a></div> 

     <div class="uncat"> 
     <img src="/static/media/images/2012/1019/main-qimg-fa20c3f66a50e7a28c4e425b388303fc.jpeg" id="10"/> 
     </div> 

然後用戶可以將任何圖片拖放到一個選擇使用以下Javascript區域:

addEvent(bin, 'drop', function(e) { 
if (e.stopPropagation) 
    e.stopPropagation(); 

    var csrftoken = getCookie('csrftoken'); 

    // AJAX call 
    $.post('/image_in_folder/', { 

    // figure out better way to retrieve id 
     // id not passed from masonry 
    image:DRAGSOURCE.id, 
    folder:this.id, 
    'csrfmiddlewaretoken': csrftoken 
    }, function(data){ 
     console.log(data); 
    }); 
} 

});

什麼非客戶端的信息,我可以張貼以識別用戶拖動的模因?目前,我使用'id'屬性作爲臨時解決方案。但用戶可能會修改數據以劫持拖放。

任何幫助,將不勝感激!

回答

1

我可以張貼

沒有什麼非客戶端的信息。 POST請求來自客戶端。您只能發送可供客戶使用的信息。

目前,我使用'id'屬性作爲臨時解決方案。但用戶可能會修改數據

因此,驗證用戶,然後檢查他們是否被授權上傳該ID的文件。

+0

驗證用戶的好主意。謝謝! –