1

我的 ASP.Net 3.5 Web 表单站点存在问题,有时请求:

WebResource.axd?d=eIozr3loXr3APyEewE38BIDKqN_q3qvb1YMpcivEzsc8xk5zz-o6uaPkpyFICfz_9GLwnEFNScd7yKWROBOvLU4gE-Y1&t=634604893351482412

导致抛出异常。这是在 WebForms 回发 javascript 中加载的请求(例如 WebForm_DoPostBackWithOptions、WebForm_DoCallback 等)。

该错误似乎与此 SO 帖子非常相似:WebResource.axd throwing exceptions in web farm,除了生产环境是单个服务器,而不是 Web 场。这排除了跨不同服务器或不同 System.Web.dll 版本的不同机器关键元素的任何问题。

还有哪些其他情况可能导致此问题偶尔发生?

编辑:我刚刚注意到失败的请求实际上来自:

webresource.axd?d=73uzdnkyw4tt5-xgrmheyelsy01btqexhl8hk8myqspxxbu6krzyliy7e8-6jyofqge7m6uwfve9be3rhinncnv94v01&t=634258886654344891

这都是小写,这将导致Base64解码失败。不知道为什么有时aspx页面会以小写形式吐出这个链接。

4

1 回答 1

0

原来有一个 Http 模块使用 .ToLower() 重定向 URL,这意味着 WebResource.axd 中的 Base 64 编码查询字符串被修改,因此解析失败。

于 2012-05-06T21:28:58.677 回答