asp.net формирует аутентификацию вызовов Global.asax и ajax - PullRequest
0 голосов
/ 21 апреля 2011

Я использую аутентификацию форм в моем текущем приложении asp.net для веб-форм "не MVC" и задаюсь вопросом, вызывается ли Global.asax [Application_AuthenticateRequest] и [Application_PostAuthenticateRequest] при каждом запросе к серверу или нет? Я имею в виду количество вызовов ajax для обработки Global.asax или могут возникнуть ошибки! потому что я нашел в этой ссылке конфликт:

http://channel9.msdn.com/forums/TechOff/256322-Strangeness-between-ASPNET-AJAX-and-Globalasax/

поэтому, пожалуйста, посоветуйте, если это хорошо или плохо для обработки пользовательской аутентификации для вызовов ajax через Global.asax

спасибо,

1 Ответ

1 голос
/ 21 апреля 2011

AJAX-вызовы обратно в ваше приложение - это то же самое, что посещение сайта браузером, так что да, эти события будут запускаться.

Статья, на которую вы ссылаетесь, касается сценария, в котором было сделано более одного запроса.в пределах одного сеанса.

http://msdn.microsoft.com/en-us/library/ms178581.aspx

Доступ к состоянию сеанса ASP.NET является исключительным для каждого сеанса, что означает, что если два разных пользователя делают параллельные запросы, доступ к каждому отдельномусеанс предоставляется одновременно.Однако, если два одновременных запроса сделаны для одного и того же сеанса (с использованием одного и того же значения SessionID), первый запрос получает эксклюзивный доступ к информации сеанса.Второй запрос выполняется только после того, как первый запрос завершен.

Таким образом, если вы сделали два запроса обратно в ваше приложение из кода ajax, запущенного в браузере, они будут выполняться один за другим, а не параллельно.

Невозможно отключить эту функцию.

В ASP.NET MVC3 можно создавать бессессионные контроллеры, которые разрешают обслуживать несколько запросов AJAX в одном сеансе нав то же время, украшая контроллер с этим атрибутом:

[SessionState(SessionStateBehavior.Disabled)]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...