2009-10-10 1 views
0

У меня есть случай, когда пользователь закрывает окно браузера. Мне нужно установить объект приложения в null ... и для этого я буду использовать JavaScript onbeforeUnload для работы на стороне сервера ...Ajax PageMethods Vs XMLHTTP

, так что я хотел знать, что лучше XMLHTTP или ajax PageMethod ..., который быстрее .. ??

я использовал оба, и обнаружил, что PageMethods требует меньше кодирования ... и я не должно создать еще одну ASPX страницы, чтобы сделать работу на сторону сервера ...

может кто-нибудь объяснить разницу между этими двумя и производительностью мудрый, который был бы лучше ???

Большое спасибо

+0

Я единственный, кто задает вопросы, на которые не ответил ????? –

+0

В FAQ нет ничего, что гарантировало бы вам, что если вы зададите вопрос на SO, вы получите ответ. Вы можете или не можете получить ответ в зависимости от ясности вашего вопроса и показывая, что вы сделали до сих пор, чтобы решить проблему и какие проблемы вы столкнулись. –

ответ

0

Серверный компонент не должны полагаться на действия пользователя закрытия браузера (или выхода из заявки). Как вы знаете, клиент никогда не заслуживает доверия. Например, пользователь может использовать диспетчер задач, чтобы просто убить браузер, или есть перебой в электропитании, и пользовательская машина просто отключается. Поскольку вы не можете полагаться на то, всегда ли отправляются данные от клиента, вам нужно сделать это исключительно на стороне сервера. По этой причине существует понятие обработчиков сеансов, и большинство фреймворков могут подключаться к дополнительным обработчикам сеансов.

Эти обработчики сеансов будут либо конфигурировать сеанс после его открытия (например, пользователь входит в приложение), либо сеанс убит (например, когда происходит тайм-аут, так как пользователь не взаимодействует с приложением больше чем X минут).

И чтобы ответить на ваш вопрос: используйте XmlHttpRequest, так как это быстрее.