Скачав необходимую документацию с Google и получив сек{ ключ, настройте службу на своем сервере, которая будет прв запросы от ваших пользователей и переправлять их на Google, ной принцип построения службы практически тот же самый, что1 службы Math, рассмотренной выше.
Для начала откройте консоль администрирования IIS (Пуск -> Адм рирование -> Internet Information Service). Разверните дерево в левой i ли программы, чтобы увидеть узел Default Web Site. Щелкните по i правой кнопкой мыши и в контекстном меню выберите пункт Virtual Directory. В поле Alias мастера создания виртуального кат введите имя нового каталога GoogleProxy и щелкните по кнопке! (Далее). В следующем окне мастера отыщите стандартный ката с: \InetPub\wwwroot и создайте в нем новый каталог (все с тем же i GoogleProxy). В остальных окнах мастера оставьте все параметре умолчанию. С помощью Проводника Windows создайте в каталог ogleProxy подкаталог bin.
Затем откройте текстовый редактор, создайте новый файл и поме в него следующий текст в одной строке:
<%@ WebService Language="c#"
Codebehind="GoogleProxy.asmx.cs" Class="Wrox.Services.GoogleProxyService"
Сохраните этот файл под именем GoogleProxy. asmx в созданном кат GoogleProxy.
Теперь создайте основной файл, GoogleProxy. asmx. cs:
using System.Web.Services; using GoogleService;
namespace Wrox.Services {
[WebService (Description = "Позволяет обращаться к службе Google API", Namespace = "http://www.wrox.com/services/googleProxy")] public class GoogleProxyService : System.Web.Services.WebService {
readonly string GoogleKey = "EwVqJPJQFHL4inHoIQMEP9jExTpcf/KG";
[WebMethod(
•)]
Description = "Возвращает подсказку Google для заданной фразы, public string doSpellingSuggestion(string Phrase) {
GoogleSearchService s = new GoogleSearchServiceO;
s.Url = "http://api.google.com/search/beta2";
string suggestion = "";
try
{
suggestion = s.doSpellingSuggestion(GoogleKey, Phrase);
}
catch(Exception Ex) {
throw Ex;
}
if (suggestion == null) suggestion = "Подсказок не найдено."; return suggestion;
}
}
?')
fie забудьте указать в переменной GoogleKey значение своего ключа, по¬сле чего сохраните файл в том же каталоге, в каком сохраняли преды¬дущий.
Программный код достаточно прост; вся фактическая работа выпол¬няется классом GoogleSearchService. Первая строка в методе doSpelling-Saggestion создает экземпляр класса GoogleSearchService. После этого устанавливается URL службы. Этот шаг необходим не всегда, но мы влагаем, что такой способ облегчает возможность изменения URL «а этапе разработки. В реальных приложениях URL можно было бы извлекать из конфигурационного файла, обеспечивая возможность легкого перехода от одного сервера к другому.
Потом вызывается метод doSpellingSuggestion.1 Ему в качестве аргу-иентов передаются секретный ключ и искомая фраза. Это еще одно преимущество схемы с прокси-сценарием: особо важная информация,
Это переопределенное имя метода (2 параметра), в отличие от тела метода с тем же именем (1 параметр), в котором оно вызывается. Иначе получился бы рекурсивный вызов, не содержащий условия завершении рекурсии, т. е. вызов бесконечной глубины. - Примеч. науч. ред.

например ключи, может храниться на стороне сервера, а не в б-на стороне клиента.
Если во время работы метода возникло исключение, то оно бу~ буждено повторно и возвращено в виде ошибки SOAP. Если от будет получено значение null, то будет возвращено соответст сообщение, в противном случае переменная suggestion возвр без изменений.
Теперь необходимо создать класс, который будет взаимодейс с Google. Скопируйте файл GoogleSearch.wsdl в каталог GoogL и запустите командную строку. Перейдите в каталог GoogleProxy пустите следующую команду (предупреждения, сообщающие об ствии схемы, можно игнорировать):
WSDL /namespace:GoogleService /out:GoogleSearchService.cs GoogleSearciv
Утилита WSDL прочитает файл GoogleSearch.wsdl и создаст исх-код класса, который будет взаимодействовать со службой. Класс помещен в пространство имен GoogleService в соответствии с п параметром командной строки. Этот исходный код необходимо пилировать как библиотеку DLL, а это придется сделать с по компилятора языка С# (как мы делали это ранее). Введите в : ной строке команду, приведенную ниже, или запустите на исп пакетный файл с именем MakeGoogleServiceDLL.bat, поставляемый сте с кодом, который вы скачали.
Похоже на то, что утилита WSDL. ехе может устанавливаться в ные каталоги в зависимости от наличия других программных ко тов Microsoft. На машинах, где установлена Visual Studio .NET, это, ятно, будет каталог c:\Program Files\Microsoft Visual Studio . NET SDK\vi. i\Bin, ко скорее всего вам придется самостоятельно оты на своей машине.
С:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\csc.ехе /г:System.dll /r:System.Web.dll /r:System.Web.Services.dll /tilibrary /out:bin\GoogleSearchService.dll GoogleSearchService.es
Как и ранее, параметр / г: сообщает компилятору, какие допол ные библиотеки необходимы для обеспечения поддержки в библиотеке GoogleSearchService.
И последний этап - скомпилируйте сам класс GoogleProxy:
С:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\csc.ехе /г:System.dll
/г:System.Web.dll /г:System.Web.Services.dll /г:bin\GoogleSearchService
/t:library /out:bin\GoogleProxy.dll GoogleProxy.asmx.es
Обратите внимание на упоминание в командной строке имени б теки, которую вы только что создали.
Теперь все готово к тестированию, и можно ввести в адресную броузера URL:
Щелкнув по кнопке Вызвать (Invoke), вы увидите содержимое до~ та XML, который будет возвращен в ответ на запрос (рис. 6.10).

Вентиляторы s p. Вентиляция ostberg. . Смотрите! Продам сd магнитолу на bmw 3. Тесты . Цены на мебель из дерева в Петербурге. Производство мебели из дерева, мебель производство.