最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

解决jQuery上传插件Uploadify出现HttpError302错误的方法_jquery

来源:动视网 责编:小采 时间:2020-11-27 21:47:29
文档

解决jQuery上传插件Uploadify出现HttpError302错误的方法_jquery

解决jQuery上传插件Uploadify出现HttpError302错误的方法_jquery:之前介绍过jquery uploadify上传插件的使用方法,我在使用中遇到过Http Error 302错误问题,应该会有很多人在使用中遇到过,在此记录下来: 首先http 302是请求被重定向的意思,这就很容易理解了,如果你的uploadify处理上传脚本有session验证,就
推荐度:
导读解决jQuery上传插件Uploadify出现HttpError302错误的方法_jquery:之前介绍过jquery uploadify上传插件的使用方法,我在使用中遇到过Http Error 302错误问题,应该会有很多人在使用中遇到过,在此记录下来: 首先http 302是请求被重定向的意思,这就很容易理解了,如果你的uploadify处理上传脚本有session验证,就


之前介绍过jquery uploadify上传插件的使用方法,我在使用中遇到过Http Error 302错误问题,应该会有很多人在使用中遇到过,在此记录下来:
首先http 302是请求被重定向的意思,这就很容易理解了,如果你的uploadify处理上传脚本有session验证,就会出现此错误,因为flash在执行post请求的时候没有包含cookie信息,而服务器的session会根据客户端的cookie来得到SESSIONID。没有提交cookie自然就不能获取到session,然后uploadify就返回了302(请求被重定向)的错误。
解决办法:

把session_id的值传到服务端:

然后在服务器端session验证之前:

当然,你也可以直接在url中将session id传过去,这样Http Error 302错误就可以得到解决。

问题扩展:MVC使用uploadify3.1 IE下正常firefox、chrome也出现HTTPERROR 302错误,有什么解决办法?

jquery uploadify在ie下可以正常上传,在实现异步上传的时候,每一个文件在上传时都会提交给服务器一个请求。每个请求都需要安全验证,session 和cookie的校验。是的,就是这样。由于jquery uploadify是借助flash来实现上传的,每一次向后台发送数据流请求时,ie会自动把本地cookie存储捆绑在一起发送给服务器。但 firefox、chrome不会这样做,他们会认为这样不安全。

首先需要对global.asxa添加如下内容

protected void Application_BeginRequest(object sender, EventArgs e)
 {
 /* we guess at this point session is not already retrieved by application so we recreate cookie with the session id... */
 try
 {
 string session_param_name = "ASPSESSID";
 string session_cookie_name = "ASP.NET_SessionId";

 if (HttpContext.Current.Request.Form[session_param_name] != null)
 {
 UpdateCookie(session_cookie_name, HttpContext.Current.Request.Form[session_param_name]);
 }
 else if (HttpContext.Current.Request.QueryString[session_param_name] != null)
 {
 UpdateCookie(session_cookie_name, HttpContext.Current.Request.QueryString[session_param_name]);
 }
 }
 catch
 {
 }

 try
 {
 string auth_param_name = "AUTHID";
 string auth_cookie_name = FormsAuthentication.FormsCookieName;

 if (HttpContext.Current.Request.Form[auth_param_name] != null)
 {
 UpdateCookie(auth_cookie_name, HttpContext.Current.Request.Form[auth_param_name]);
 }
 else if (HttpContext.Current.Request.QueryString[auth_param_name] != null)
 {
 UpdateCookie(auth_cookie_name, HttpContext.Current.Request.QueryString[auth_param_name]);
 }

 }
 catch
 {
 }
 }

 private void UpdateCookie(string cookie_name, string cookie_value)
 {
 HttpCookie cookie = HttpContext.Current.Request.Cookies.Get(cookie_name);
 if (null == cookie)
 {
 cookie = new HttpCookie(cookie_name);
 }
 cookie.Value = cookie_value;
 HttpContext.Current.Request.Cookies.Set(cookie);
 }

初始化页面上传插件代码如下

一个问题的研究可以是发散性的是多方面,我们要学会举一反三,这样才能灵活的学习专业知识,掌握专业技能,希望对大家的学习有所帮助。

文档

解决jQuery上传插件Uploadify出现HttpError302错误的方法_jquery

解决jQuery上传插件Uploadify出现HttpError302错误的方法_jquery:之前介绍过jquery uploadify上传插件的使用方法,我在使用中遇到过Http Error 302错误问题,应该会有很多人在使用中遇到过,在此记录下来: 首先http 302是请求被重定向的意思,这就很容易理解了,如果你的uploadify处理上传脚本有session验证,就
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top