plupload支持多种上传方式 html5 flash silverlight …… 真的是神器
在使用中还是发现了和swfupload一样的问题 flash无法回传cookie session等的验证信息
好吧 给出解决方案 在配置pluloader的时候给以下参数
multipart_params: {
'_http_accept': 'application/javascript',
//csrf 为什么名字是authenticity_token 因为配合的是rails的csrf 其它框架自己看
'authenticity_token' : '<%= form_authenticity_token %>',
//把cookie存在一个<input type="hidden" id="swfUploadCookie" value="cookie-value:xxxxooooxxxxooooo">
'swfUploadCookie' : $("#swfUploadCookie").val()
}
服务端接受到这个swfUploadCookie以后,可以使用服务端的cookie解密方法把cookie解密 再给cookie重新赋值一次就ok了
在rails中我是这么做的:
做一个方法:
def swfupload_cookie_plugin
#将回传过来的放在input的value中的cookie信息机密重新给cookie赋值一次
#不要误会哦 这里的session无非只是加密的cookie而已
session[:user] = Marshal.load(Base64.decode64(params[:swfuploadCookie]))["user"]
end
凡是通过flash上传的action 都应用这个before filter
好了 这样就解决了
希望对你有帮助 :)