想必拿TP框架的程序猿们都遇到一个问题:uploadify在火狐浏览器上上传图片提示“302”错误。网上有不少解决方案,但都很零散,这里就做一个全面的剖析。
1. 问题描述:thinkphp框架中,使用uploadify上传图片时提示“302”错误
2. 原因:uploadify是flash上传,而在火狐浏览器中,从客户端请求是不携带session信息的,所以在提交图片时,在服务器端因为session为空导致登录验证失败,从而导致重定向到其它页面,这就是302重定向错误的原因。
3. 解决原理:先在客户端cookies中存储session_id,然后请求时把session_id作为参数传入服务器端,在服务器端对session重新设置,这样就会将旧有的session给恢复回来,这样登录验证就有了session内容了。这样提交数据也就不被登录拦截了。
4. 两种解决方式,第一种:只需要修改thinkphp/conf/convention.php中,将VAR_SESSION_ID前面的注释去掉,然后在客户端这样配置下:
"uploader" : "{:U('File/uploadPicture',array('session_id'=>session_id()))}",第二种方式:在applic