码迷,mamicode.com
首页 > 其他好文 > 详细

获取token之后,再调用匿名方法

时间:2016-10-21 16:01:05      阅读:268      评论:0      收藏:0      [点我收藏+]

标签:file   class   cat   current   pps   data   tin   ati   匿名方法   

js获取token


bpm.api.beginDownload = function (filePath, fileName) {
    var url = "/Home/GetToken";
    $$.getJSON(url, {}, function (data) {
        if (data.IsSuc) {
            var url = "/Home/Download?dirRelativePath=" + filePath + "&token=" + data.Token + "&fileName=" + fileName;
            window.location = url;
            //window.open(url, "_blank");
        }
    });
}

 

 public static Hashtable htTokens = Hashtable.Synchronized(new Hashtable());
        public ActionResult GetToken()
        {
            var token = Guid.NewGuid();
            htTokens.Add(token, Tool.GetCurrentUser());
            return Json(new { IsSuc = true, Token = token.ToString() }, JsonRequestBehavior.AllowGet);
        }
        /// <summary>
        /// 暂时无用
        /// </summary>
        /// <param name="dirRelativePath"></param>
        /// <param name="fileName"></param>
        /// <returns></returns>
        [AllowAnonymous]
        public ActionResult OldDownload(string dirRelativePath, string fileName)
        {
            string token = Request.QueryString["token"];
            if (htTokens != null && !string.IsNullOrEmpty(token) && htTokens.Contains(Guid.Parse(token)))
            {
                string uploadPath = System.Configuration.ConfigurationManager.AppSettings["BPMAttachments"];
                string dirAbsolutePath = uploadPath + dirRelativePath;

                if (!System.IO.File.Exists(dirAbsolutePath))
                {
                    return Content("提示:文件在磁盘上不存在");
                }
                htTokens.Remove(token);
                //HttpContext.Response.AddHeader("content-disposition", "attachment;filename=" + fileName);
                //return File(dirAbsolutePath, "application/octet-stream");
                var contentType = MimeMapping.GetMimeMapping(fileName);
                HttpContext.Response.AddHeader("content-disposition", "inline;filename=" + fileName);
                return File(dirAbsolutePath, contentType);
            }
            else
            {
                return Content("提示:没有权限");
            }
        }

 

获取token之后,再调用匿名方法

标签:file   class   cat   current   pps   data   tin   ati   匿名方法   

原文地址:http://www.cnblogs.com/xuguanghui/p/5984509.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!