plupload如何支持csrf与cookie以及rails如何使用

本文介绍如何解决PLUpload在使用Flash上传时遇到的验证信息无法回传的问题,并提供了一个具体的解决方案,包括如何设置参数及Rails框架下的实现示例。
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
好了 这样就解决了
希望对你有帮助 :)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值