Книга: Программирование мобильных устройств на платформе .NET Compact Framework
Листинг 15.7. Вызовы Web-служб с передачей параметров только явным образом
Листинг 15.7. Вызовы Web-служб с передачей параметров только явным образом
//0. Установить связь
int sessionID = someWebService.LogOn(userCredentials);
//
//...Выполнение другого многострочного кода...
//
//1. Вызвать Web-службу и создать новый заказ
int orderID = someWebService.CreateNewOrder(sessionID, userInfo, productInfo);
//
//...Выполнение другого многострочного кода...
//
//2. Подтвердить заказ серверу
someWebService.ConfirmPayment(sessionID, orderID, paymentInfo);
//
//...Выполнение другого многострочного кода...
//
//3. Подтвердить адрес доставки
someWebService.ConfirmShipping(sessionID, orderID, shippingAddress);
//
//...Выполнение другого многострочного кода...
//
//4. Завершить оформление заказа someWebService.FinalizeOrder(sessionID, orderID);
Анализ этого кода не должен вызвать у вас особых затруднений. На шаге 1 создается новый заказ и возвращается новый идентификатор заказа (orderID), который будет использоваться в последующих вызовах. Этот номер заказа передается в каждый последующий запрос, поэтому вам должно быть ясно, что каждый из вызовов Web-служб может идентифицировать обрабатываемый заказ при помощи переданного ему параметра orderID.
Вместо использования явного параметра orderID эту информацию можно передавать Web-службе при помощи cookie-файла, хранящегося на стороне клиента. В этом случае клиентский код должен выглядеть примерно так, как показано в листинге 15.8.
- Требуются различные варианты поддержки cookie-файлов
- Листинг 15.7. Вызовы Web-служб с передачей параметров только явным образом
- Листинг 15.8. Вызов Web-служб путем неявной передачи параметров посредством cookie-файлов
- Первый вызов Web-службы часто характеризуется увеличенным временем задержки
- Передача больших объемов данных посредством запросов Web-служб неэффективна
- "Болтливость" в мобильных сетях обходится весьма недешево
- Листинг 15.9. Неэффективная организация диалога с Web-службой, в которой используется множество вызовов
- Листинг 15.10. Группирование запросов в одном вызове Web-службы
- Листинг 15.11. Код для загрузки файла с Web-сервера
- При работе с неоднородными сетевыми топологиями могут возникать трудности
- Трудности, связанные с использованием Web-служб на мобильных устройствах
- Листинг 15.6. Простая Web-служба
- Листинг 15.1. Простой код файлового ввода-вывода, иллюстрирующий различия между локальной и удаленной передачей данных
- Листинг 10.1. (simpleid.c) Отображение идентификаторов пользователя и группы
- Тестирование Web-сервиса XML с помощью WebDev.WebServer.exe
- Единое имя файла параметров InterBase
- Системные вызовы и драйверы устройств
- Глава 8 Дополнительные службы
- Листинг 15.11. Код для загрузки файла с Web-сервера
- 5.6 Служба теневого копирования томов в Windows ХР и Windows Server 2003
- Службы Windows SharePoint
- Версии служб Windows SharePoint