Ошибка WebResource.axd - «Это недопустимый запрос веб-ресурса».

У меня есть большое веб-приложение .NET 2, которое было обновлено для работы с платформой .NET 4.0. С момента обновления я регулярно вижу в своих журналах следующую ошибку:

Это недопустимый веб-ресурс.

У меня есть большое веб-приложение .NET 2, которое было обновлено для работы с платформой .NET 4.0. С момента обновления я регулярно вижу в своих журналах следующую ошибку:

Это недопустимый веб-ресурс.

У меня есть большое веб-приложение .NET 2, которое было обновлено для работы с платформой .NET 4.0. С момента обновления я регулярно вижу в своих журналах следующую ошибку:

Это недопустимый веб-ресурс. запрос.

Запрошенный ресурс: " ~ / WebResource.axd " Насколько я могу судить, запрос выглядит нормально, поскольку есть длинная строка запроса с ключами (ключи - d , t ) и значениями для этих ключей.

Имеет механизм для генерации запросов к WebResource.axd изменялся между версиями фреймворка? Кто-нибудь может посоветовать, как решить эту проблему?

Изменить: Я нашел способ расшифровать строку запроса запроса веб-ресурса (код следует). Запрошенный ресурс - pCSSFriendly | CSSFriendly.CSS.Menu.css , что похоже на проблему с обращением к ресурсу CSSFriendly.MenuAdapter, который используется приложением. Похоже, что эта ведущая буква "p" может быть проблемой.

private string DecryptWebResource(string urlEncodedData)
{
    byte[] encryptedData = HttpServerUtility.UrlTokenDecode(urlEncodedData);
    Type machineKeySection = typeof(MachineKeySection);
    Type[] paramTypes = new Type[] { typeof(bool), typeof(byte[]), typeof(byte[]), typeof(int), typeof(int) };
    System.Reflection.MethodInfo encryptOrDecryptData = machineKeySection.GetMethod("EncryptOrDecryptData", System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.NonPublic, null, paramTypes, null);

    try
    {
        byte[] decryptedData = (byte[])encryptOrDecryptData.Invoke(null, new object[] { false, encryptedData, null, 0, encryptedData.Length });
        string decrypted = Encoding.UTF8.GetString(decryptedData);
        return decrypted;
    }
    catch (System.Reflection.TargetInvocationException)
    {
    }

    return String.Empty;
}   
7
задан kristian 14 February 2011 в 05:15
поделиться