Во-первых, это обсуждение, если кто-то из вас, ребята, делает такую вещь, как аннулирование запроса в контроллерах WebAPI (возможно, также применимый для MVC).
В частности, я имею в виду следующий сценарий: Клиент (обычно браузер) запускает запросы, перемещается или более общий, прерывает запрос по любой причине. Теперь запрос прерывается с клиентской стороны и больше не рассматривается. Но на стороне сервера запрос все еще выполняется и, как правило, может делать две вещи, особенно интересные:
- Сделайте (тяжелый) DB-Query
- Сделать (тяжелый) вызов службы другой службе
И все в порядке в конце (по крайней мере, когда это будет операция свободного чтения с побочным эффектом, по крайней мере).
Кто-нибудь обрабатывает отмену текущего запроса/услуги в таком случае?
То, что я знаю, это то, что CancellationToken может быть передано в API-контроллере (хотя я не мог заставить его работать, чтобы отмена действительно запрашивалась при прерывании с клиента). Это CancellationToken, теоретически, необходимо будет передать всем нижним уровням для обработки вероятного отмены DB- и служебных вызовов.