Лучший способ обработать истекший cookie аутентификации Форм.NET в вызове ajax?

Используя Kotlin, ничто не решает мою проблему, пока я не изменяю параметр Разработчика от 'applicationContext' до 'этого'.

не Делает работ

val dialogDelete = AlertDialog.Builder(applicationContext)
            .setTitle("Confirmation")
            .setMessage("Delete this photo?")
            .setNegativeButton(android.R.string.no){ it, which ->
                it.dismiss()
            }
dialogDelete.show()

Работы

val dialogDelete = AlertDialog.Builder(this)
            .setTitle("Confirmation")
            .setMessage("Delete this photo?")
            .setNegativeButton(android.R.string.no){ it, which ->
                it.dismiss()
            }
dialogDelete.show()
5
задан 2 September 2009 в 11:20
поделиться

3 ответа

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

2
ответ дан 15 December 2019 в 06:31
поделиться

С этим можно по-настоящему вообразить. Если AJAX on onError является недопустимым сеансом, откройте модальное всплывающее окно (форма светового поля) с вашим представлением входа в систему, заключенным внутри. Разрешите пользователю входить в систему из модального окна, тогда они не потеряют никаких данных формы и не будут перенаправлены на весь ваш сайт. Однако, скорее всего, потребуется попытаться репостить свои данные. Может потребоваться некоторая работа, но, в конце концов, я думаю, что для конечного пользователя это будет проще.

PS - Я думаю, что интерфейс входа типа Digg.com. Нажмите «Добавить комментарий», откроется модальное всплывающее окно.

1
ответ дан 15 December 2019 в 06:31
поделиться

не уверен, какой фреймворк ajax вы используете, но большинство (включая asp.net ajax) обрабатывает исключения сервера, позволяя вам указать функцию onError.

Namespace.Object.Method( var1, var2, onSuccess, onError ) { ... } и т.д.

если вы позволите asp.net управлять сессиями, и пока данная страница включена только для аутентифицированных пользователей, фреймворк будет бросать исключение недействительной сессии, когда она истечет (я забыл, когда именно)

внутри onError вы можете проверить тип исключения и перенаправить на страницу входа. фактически, все, что вам нужно сделать, это перезагрузить текущую страницу, и .net перенаправит ее на страницу входа. document.location.href = document.location.href; (это перезагрузит текущую страницу, игнорируя данные отправленной формы, если таковые имеются)

0
ответ дан 15 December 2019 в 06:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: