我已经创建了一个自定义的向导控件,它可以在您处理过程中动态加载用户控件。向导在我测试过的所有环境(PC/MAC)和浏览器中都按预期运行,但是一个客户端报告她无法完成向导。我对这个问题的了解:
-
对于此用户,它总是在同一向导步骤上失败(不是第一步)
-
当用户单击步骤中的“下一步”按钮时,控制器报告请求不是回发请求(即IsPostBack()==false),并显示向导的第一页
-
客户端正在使用Mac,并使用最新版本的Safari访问站点
-
如果客户端切换到Firefox,甚至只是将Safari中的用户代理切换到Safari之外的其他东西,问题就会消失。
所以问题是,当客户端到达向导中的某个步骤并单击“下一步”时,控制器只是显示向导的第一步,而不是重新加载该步骤以启动保存事件。
不会引发异常,windows事件日志也不会显示任何相关的错误/警告。
我要找的是诊断这个错误的方法。目前,我无法重现客户的行为,但在现场亲眼看到后,我可以确认这绝对是一个有效的问题。
2010年10月26日更新:
我们安装了
proxy
以便检索请求和响应。问题是,当运行代理时,客户端似乎不必再出现问题。这种行为对任何人都有意义吗?
2010年10月27日更新:
在调查了客户机上的通信量之后,我们注意到响应头包含了一些与客户机端代理相关的条目,并且我们确认他们实际上正在办公室运行squid代理。为了排除这与问题有关,我们让他们关闭,然后再试一次向导。这次没有遇到任何问题!因此代理似乎干扰了请求,导致.NET以某种方式将POST请求记录为非回发。在失败请求的响应头中找到以下行。有谁能评论一下乌贼是如何引起我们正在经历的行为的?我们能做些什么?
X-Cache:squid-12未命中,ClientSiteProxy未命中
X-Cache-Lookup:客户端未命中站点代理:3128