0

我目前正在更改服务器端的密码异常处理。因此,如果更改密码在服务器端引发异常(即新密码不满足安全要求),则会出现如下错误处理:

catch (Exception ex)
        {
            context.Response.Write(ex.Message);
            context.Response.StatusCode = 500;
            context.Response.End();
            HttpContext.Current.ApplicationInstance.CompleteRequest();
        }

然后,在 javascript 中的 AJAX 处理程序中读取失败:

failure: function(response, options) {
    loadMask.hide();
    if (response.status != -1) {
        if (response.responseText.indexOf("title") == -1) {
           Ext.MessageBox.alert('Error', response.responseText);
        }
        else {
           var idx1 = response.responseText.indexOf("title") + 6;
           var idx2 = response.responseText.indexOf("/title") - 1; 
           if (idx1 > 0) {
               Ext.MessageBox.alert('Error', response.responseText.substring(idx1, idx2));
           }
           else {
                Ext.MessageBox.alert('Error', 'No change of password');
           }
         }
     }

问题是:

  • 在本地一切正常,详细的异常被正确写入并保存在响应中(因此,responseText 显示正确的 ex.Message)。
  • 但是,在客户端计算机上导入应用程序时,总是出现“500 - 内部服务器错误”。

我几乎 99% 确定两个工作站上的 Web.config 文件是相同的。

问题可能出在 IIS 设置中吗?

最好的问候,loopdster

4

0 回答 0