浏览器上传文件,反应后台的处理情况,测试时正常的,但是再加上AuthorizAtrribute认证权限后,进度就不能时时更新了。
问题的经过和源代码在我的博客文章里http://www.cnblogs.com/crazyguo/p/4878345.html,这里希望园子里的大牛帮忙看看
如果有朋友能帮忙解决问题,我可以考虑付一部分现金,以表示谢意。
检查下获取进度的请求,是不是缺少什么header或者cookie之类的。
这是一个思路,这背后的原理如何理解?我会试试看
@郭欢欢: 因为登录验证,就是判断的这些东西,只有这些东西缺失了,可能会导致请求失败,也就无法更新进度了。
@幻天芒: 我看了下,如果文件没有上传完毕,进度一直不更新,进度代码未被执行,等上传完毕了,之前的ajax进度请求才被一个个返回值,说明可以请求成功的啊。末尾有代码的下载链接,你可以试试,我纠结很久了
@郭欢欢: 是加了权限认证之后,才有这个问题的么?
@幻天芒: 是的,加上认证权限之后才出现这个问题,Fiddler跟踪看了,貌似没什么问题发现,好奇怪
@郭欢欢: 没有报错什么的?只是pending?
@幻天芒: 这个是上传过程中Fiddler的监控情况截图
这个是文件上传完之后,ajax所有的请求会返回值,但此时已毫无意义:
@郭欢欢: 你把你博客里面修改后的程序放在github上,我看看呢。我没办法直接在博客园下载zip文件。
@幻天芒: OK
@幻天芒:这个是我的代码地址:https://github.com/CrazyGuo/Xuploaf 运行试试看,谢谢你
@郭欢欢: 我什么都没改,居然对的。我是iis8.建议你把dll全删了,重新生成一次看看。
@幻天芒: 如果这样的话,还真不好验证,难道是IIS的问题?把分数给你吧
其实,我很想知道去掉登陆验证是否还存在这个问题……感觉应该还存在
去掉还真没这个问题