2012-01-25 34 views
0

我使用MVC 3.0剃鬚刀和有頁面,通過驗證的用戶可以上傳文件,但是當他們按下上傳文件按鈕,新的會話開始......jQuery的上傳(開始新的Session)

我怎麼能解決這個問題?

jQuery腳本:

<script type="text/javascript"> 
    $(window).load (
     function() { 
      $("#file-uploader").fileUpload({ 
       'uploader': '/Scripts/uploader.swf', 
       'cancelImg': '/Images/cancel.png', 
       'buttonText': 'Upload File', 
       'script': 'Chat/Upload', 
       'multi': true, 
       'auto': true, 
       'forUser': @Convert.ToInt32(Session["UserId"]) 
      }); 
     } 

); < /腳本>

< DIV ID = 「文件上傳」 >
<無腳本> <p>請啓用JavaScript才能使用文件上傳。 </P > < /無腳本>
</DIV >

+0

我不知道MVC3剃鬚刀,但此行不執行任何操作:'$ .session',缺乏一個分號。也許你打錯了一個函數調用? – BiAiB

回答

1

看起來你正在使用的插件依賴於Flash和它不會發送會話,並與請求一起形成身份驗證Cookie。這是一個blog post,它說明了處理這種情況的一種可能的方法。它使用Uploadify,但您應該能夠將其適配到您的插件。這個想法是發送會話ID和身份驗證cookie值作爲附加參數,以便服務器可以重建實際的會話和用戶對象。