Почему мы говорим, что веб-службы не имеют гражданства?
Веб-службы являются апатридами?
Ответ 1
Они не сохраняют состояние между запросами клиента. то есть служба не знает и не заботится о том, чтобы последующий запрос поступал от клиента, который/не сделал предыдущий запрос. В принципе, это "дать мне эту информацию и забыть обо мне", которая ставит бремя на клиента для поддержания любого состояния.
Ответ 2
Поскольку веб-службы основаны на HTTP, который является протоколом без сохранения.
Цитирование wikipedia:
Сервер без состояния - это сервер, который рассматривает каждый запрос как независимый транзакция, не связанная с какой-либо предыдущий запрос.
то есть. каждый запрос не зависит от предыдущего: даже если мы используем некоторые "трюки", например, файлы cookie, чтобы сохранить некоторое состояние между запросами, это не то, что определено протоколом.
Ответ 3
Потому что HTTP не имеет гражданства. После того как клиентский запрос выполняется сервером, никакая информация не сохраняется для использования в будущих транзакциях.
Ответ 4
Концепция веб-сервиса - это модель RPC (Remote Procedure Call), также называемая функцией. Таким образом, вам не нужно использовать сеанс. Кроме того, идея быть апатридом связана с необходимостью масштабирования веб-серверов в ферме серверов и, таким образом, обеспечения большей емкости.
Однако выбор использования состояния зависит от технологии и разработчика. Нет ничего, что помешало бы вам создать веб-службу ASP.Net и установить определение "EnableSession = True" в определении метода.
Это может быть полезно в некоторых сценариях базовой аутентификации, то есть для аутентификации на дому, или для автоматической корреляции для недолгого "рабочего процесса". (Однако я настоятельно рекомендую вам рассмотреть более современные методы, обеспечивающие более высокий уровень безопасности и производительности).
Ответ 5
Запросы независимы друг от друга.