uploadify上傳插件會話丟失的問題

uploadify是一款上傳文件的flash小組件,在flash盛行的年代用得比較多,來實現異步上傳功能,不過,現在已經逐步被h5代替了,如果還有在使用的建議換成h5方式,避免出現文本所遇到的問題。

  • 問題是什麼?

登錄,上傳完文件後,需要重新登錄。

  • 導致問題原因是什麼?

uploadify是一款flash插件,因瀏覽器的安全限制,讀不到cookie,導致會話丟失。

  • 如何解決?

知道問題的的原因,解決的辦法也就比較明確了,就是保持cookie跟蹤不變。

下面是php的解決方案,其他語言類似。

  1. php.ini要修改

session.use_only_cookies = 0

注意:這點修改會有安全上的問題,允許session id通過url傳遞,容易被攔截及構造,非必要不建議開啓。

  1. 修改上傳文件的html代碼
'formData':{'<?php echo session_name();?>' : '<?php echo session_id();?>'}

或在上傳文件接口url後加參數

'uploader':'process_upload.php?<?php echo session_name();?>=<?php echo session_id();?>'
  1. 服務端修改代碼

process_upload.php

$session_id = $_REQUEST[session_name()];
session_id($session_id);
session_start();

完。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章