<script src="../jquery-1.4.4.min.js" type="text/javascript"></script>
<script src="../jquery.flash.js" type="text/javascript"></script>
<script src="../jquery.jqUploader.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#example3").jqUploader({ background: "FFFFDF", barColor: "FF00FF",
allowedExt: "*.zip",
src: "../jqUploader.swf",
uploadScript : "@Url.Action("Upload","Car")",
afterScript : onRequestCompleted
});
});
</script>
<form action="@Url.Action("Upload","Car")" class="a_form">
<div id="example3"></div>
</form>
///////////行动A
public string Upload(HttpPostedFileBase fileData)
{
if (this.Request.Files.Count == 0)
{
return "";
}
var fileName = this.Server.MapPath("~/AAA/" + System.IO.Path.GetFileName(fileData.FileName));
fileData.SaveAs(fileName);
return "ok";
}
/////我在2个地方使用了这个代码。首先我在HomeController / Upload动作A和Html部分中使用Home / Index.cshtml.Then jqUploader工作。当我移动代码时蝙蝠:区域/管理员/控制器/ CarController.cs中的操作A和区域/管理员/视图/车载/ __ Extract.cshtml中的html jQUploader不起作用并且得到Http#302错误。
////当我使用新的MVC项目时,此代码有效。但是当我想在我的项目中使用时,会给出错误#302。我认为它来自Global.asax.cs,我不知道如何解决这个问题。谁能说出原因?
答案 0 :(得分:0)
HTTP状态代码302表示您的服务器正在将您重定向到其他位置。通过使用firebug找出在哪里,让我知道。此外,您可能需要将属性[HttpPost]
添加到上传操作中。
重定向的最常见原因是您未登录并尝试访问管理员功能。 (我怀疑这是通过查看路径Areas/AdminPanel/Views/Car/
)然后服务器会将您重定向到登录页面。
检查Global.asax.cs中的全局过滤器或行动Authorize
上是否列出了Upload
属性。如果是这样登录,则上传。
如果您已登录,请检查此jqUploader是否正在发送auth cookie,再次使用firebug net panel XHR选项卡查找所有这些内容。