uploadify Cookie 验证登入上传问题

上传文件时必须验证是否已登入。

当用FormsAuthentication做登入,使用FormsAuthentication.FormsCookieName进行验证是否已登入即可。

<script type="text/javascript">
var auth = "@(Request.Cookies[FormsAuthentication.FormsCookieName]==null ? string.Empty :
Request.Cookies[FormsAuthentication.FormsCookieName].Value)"; $(window).load( function () { $("#fileuploader").fileUpload({ 'uploader': '/Scripts/uploader.swf', 'cancelImg': '/Images/cancel.png', 'buttonText': 'Select Image', 'script': 'Home/Upload', 'folder': '/uploads', 'fileDesc': 'Image Files', 'fileExt': '*.jpg;*.jpeg;*.gif;*.png', 'multi': true, 'auto': true, scriptData: { token: auth } }); } ); </script> <div id="fileuploader"></div>
        [HttpPost]
        public string Upload(HttpPostedFileBase fileData, string token)
        {
            if (string.IsNullOrEmpty(token))
            {
                return "noLogin";
            }
            FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(token);
            if (ticket != null)
            {
                var identity = new FormsIdentity(ticket);
                if (identity.IsAuthenticated)
                {
                    var fileName = this.Server.MapPath("~/uploads/" + System.IO.Path.GetFileName(fileData.FileName));
                    fileData.SaveAs(fileName);
                }
            }
            return "ok";
        }

 

posted @ 2015-02-15 11:04  英雄饶命啊  阅读(192)  评论(0编辑  收藏  举报