Wednesday, August 23rd, 2017

Hello, World или начинаем работать с IE8 Visual Search

Published on Март 2, 2009 by   ·   Комментариев нет

Привет, меня зовут Себастьян Циммерман (Sébastien Zimmermann) и я являюсь основным разработчиком функции Visual Search, о которой мы уже говорили. Также именно я разработал функцию Accelerators, а во время IE7 я работал над инсталлятором и антифишинговым фильтром, теперь известным как фильтр SmartScreen.

Rocket Chinese

В данной статье я хотел бы дать вам начальные знания по созданию вашей собственной службы (или провайдера) для Visual Search в Internet Explorer 8. Если у вас есть свой сайт или вы их разрабатываете (вне зависимости от сложности), то это статья для вас.

Сделав свой сайт доступным для поиска из браузера, вы позволяете вашим пользователям или клиентам получать доступ к сайту каждый раз, когда им понадобится что-либо с данного сайта, без необходимости полностью набирать адрес сайта в адресной строке. Кроме того, вы и ваш бренд всегда рядом в их браузере. Чем полезнее служба, тем больше вероятность, что пользователи ее установят, чтобы иметь постоянную связь с вашим сайтом.

Чтобы ничего не усложнять, я прибегну к принципу Hello, World!: дам вам основную информацию, чтобы вы могли быстро запустить свою службу. Чтобы все было просто, ваша служба будет статичной. Как только заложен фундамент, вам будет легко расширить данный пример до ваших нужд вне зависимости от того, на каком языке создан ваш сайт.

Ради сохранения простоты я предположу, что адрес вашего сайта http://www.example.com (при необходимости замените эти ссылки на адрес своего сайта).

Перед тем, как пользователи смогут установить вашу службу, вам будет необходимо ее описать так, чтобы браузер смог ее понять, то есть, с помощью XML-файла, созданного согласно спецификации OpenSearch Description.

Скопируйте следующий код в файл, который необходимо разместить в корневой папке вашего сайта. Назовем файл, к примеру, opensearch.xml, так что он будет доступен по адресу http://www.example.com/opensearch.xml:

Код:


example Search


http://www.example.com/favicon.ico

В этом файле есть три важные секции:

  • URL страницы с результатами, на которую попадет пользователь после поиска, MIME-тип которой text/html, в данном случае это results.aspx. Часть {searchTerms} будет автоматически заменена IE на поисковый запрос пользователя. В данном примере я предполагаю, что на вашем сайте есть встроенный поисковый движок. Если такового нет и это не сайт внутренней локальной сети, то вы можете заменить эту ссылку на нижеуказанную, которая позволит провести поиск на вашем сайте службой live.com:
    Код:
    http://search.live.com/results.aspx?q=site:www.example.com+{searchTerms}

    .

  • Служба подсказок (от англ. suggestion) используется для помощи пользователям, во время ввода запроса для поиска, в данном случае это suggestions.xml. Если вы не хотите использовать службу подсказок, то вы можете пропустить эту строку — IE и так нормально обработает запрос. Если у вас уже есть служба подсказок, которая использует JSON, а не XML, вы можете использовать эту ссылку, просто замените тип MIME с application/x-suggestions+xml на application/x-suggestions+json.
  • Иконка — здесь мы ссылаемся на favicon.ico в корневой папке вашего сайта. Эта иконка будет использоваться в QuickPick — панели кнопок поисковых служб при использовании поиска. Если в данный момент у вас нет такой иконки, то IE выберет для вас стандартную иконку по умолчанию, а вам необходимо просто удалить эту строку. Но лучше было бы, если бы у вас была такая иконка, это позволяет пользователю опознавать ваш сайт и/или бренд.

Делаем нашу службу обнаруживаемой
Дальше вам необходимо указать браузеру, где искать описание вашей службы, то есть в недавно созданном файле opensearch.xml. Это просто: добавьте следующую строку в секции на любой странице, где вы хотите сделать возможным поиск:

Код:

И все. Попробуйте загрузить страницу: вы заметите, что стрелка в конце поля ввода поискового запроса будет подсвечена.
Щелкните по стрелке и вы сможете добавить собственную поисковую службу в IE!

Кроме того, вы можете программно разрешить пользователю добавлять вашу поисковую службу в IE. В таком случае просто добавьте на страницу ссылку или иконку, которая вызывает метод AddSearchProvider(), который будет ссылаться на следующий файл описания:

Код:

Заметьте, чтобы проверить, установил ли пользователь вашу поисковую службу, вы можете использовать метод [url=http://msdn.microsoft.com/en-us/library/aa342526(VS.85).aspx]IsSearchProviderInstalled()[/url].

Наконец, когда ваша поисковая служба будет установлена, она будет автоматически добавлена в Accelerators без каких-либо дополнительных действий.
Выделите любой текст, потом нажмите на кнопку и выберите More Accelerators, выберите вашу службу и браузер проведет поиск выделенного текста с ее помощью. Заметьте, что вы можете добавить поддержку Accelerator Previews прямо из файла OpenSearch. Эта информация выходит за рамки данной статьи, но дополнительную информацию об этом вы можете найти здесь.

Реализация подсказок при использовании Visual Search
Теперь, когда ваша служба описана, давайте займемся suggestions.xml. Сейчас я покажу вам пример, в котором будут описаны практически все функции.

Итак, давайте скопируем следующий код в файл suggestions.xml, который лежит в корневой папке вашего сайта.

Код:


test


Hello, World!
http://www.webstandards.org/files/acid2/test.html#top
Your Visual Search service is working!
Acid2 Smiley



This is a simple text suggestion


And another one with description
This is the description


This is a text suggestion with an image
Acid2 Smiley


This is a suggestion with a link and an image
http://www.live.com/results.aspx?q=Hello+World
Acid2 Smiley


Вуаля! Если вы наберете в поле для поиска слово test и выберите вашу поисковую службу, то увидите подсказки. Заметьте, что ничего, кроме данного слова работать не будет, так как IE проверяет, чтобы тег отвечал поисковому запросу.
Если вы используете ASP.NET, то можете попробовать следующий пример для чего-либо более динамичного: переименуйте suggestions.xml в suggestions.aspx, измените в OpenSearch Description тип ссылки с application/x-suggestions+xml на http://www.example.com/suggestions.aspx?q={searchTerms}, и переустановите вашу службу в браузере (сначала удалив ей: инструменты — управление дополнениями). После чего замените первые несколько строчек файла suggestions.aspx на следующие и введите поисковый запрос:

Код:
<%@ Page ContentType="text/xml" Language="C#" %>
<%@ OutputCache Location="None" %>

<%=HttpUtility.HtmlEncode(Request["q"])%>


You typed: <%=HttpUtility.HtmlEncode(Request["q"])%>



Hello, World!
http://www.webstandards.org/files/acid2/test.html#top
Your Visual Search service is working!
Acid2 Smiley

Итоги
Первый шаг, он сложный самый, и я надеюсь, что эта статья помогла вам понять, с чего начать. Эта функция позволит вашим пользователям быстрее получать информацию с вашего сайта. Если вы решили задаться этим вопросом плотнее, то наши авторы написали замечательную статью на MSDN под названием «Search Provider Extensibility».

А теперь ваша очередь разрабатывать удивительные службы, используя данную функцию. В качестве удачных примеров служб можно использовать службы, которые доступны в IE8 Gallery.

Итак, независимо от того, показываете ли вы цены на акции или у вас новостной сайт, продаете ли вы музыку, или даже запчасти для машины, вы сможете обеспечить взаимовыгодные и продолжительные отношения пользователей с вашим сайтом.

Я искренне надеюсь, что вам будет настолько же приятно разрабатывать службы для данной функции, насколько нам было приятно ее планировать. Мы заинтересованы в изучении служб, которые вы создаете. Дайте нам о них знать и загружайте ваши OpenSearch Description файлы в IE8 Gallery, как только они будут готовы для широкого использования.

Удачной разработки!

Себастьян Циммерман (Sébastien Zimmermann)
инженер по разработке Internet Explorer

Источник: http://blogs.msdn.com/ie

zp8497586rq

























































Смотрите также:

Tags: , ,

Readers Comments (Комментариев нет)

Comments are closed.

Exchange 2007

Проведение мониторинга Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 3)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Проведение мониторинга Exchange 2007 с помощью диспетчера System ... [+]

Практическое рассмотрение перехода с Exchange 2003 на Exchange 2007 (часть 1)

Введение В этой статье из нескольких частей я хочу показать вам процесс, который недавно использовал для перехода с существующей среды Exchange 2003 ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 2)

Если вы пропустили первую часть этой серии, пожалуйста, прочтите ее по ссылке Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (Часть ... [+]

Мониторинг Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 2)

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Мониторинг Exchange 2007 с помощью диспетчера System Center Operations ... [+]

Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 5)

Если вы пропустили предыдущие части этой серии статей, перейдите по ссылкам: Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 1) ... [+]

Установка и настройка Exchange 2007 из командной строки (Часть 3)

If you missed the previous parts in this article series please read: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 1)

Инструмент ExRCA Текущий выпуск инструмента предоставляется только в целях тестирования и оснащен 5 опциями: Тест подключения Outlook 2007 Autodiscover Тест подключения Outlook 2003 RPC ... [+]

Развертывание сервера Exchange 2007 Edge Transport (часть 5)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Развертывание сервера Exchange 2007 Edge Transport (часть 1) Развертывание ... [+]

Установка и настройка Exchange 2007 из командной строки (часть 2)

Если вы пропустили первую статью данного цикла, пожалуйста, перейдите по ссылке: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование интегрированных сценариев Using Exchange Server 2007 – часть 2: генерирование отчетов агента Transport AntiSpam Agent

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Использование интегрированных сценариев Using Exchange Server 2007 – часть ... [+]