poskytovatelé vyhledávačů ve Windows Search

Windows Search aktuálně používá vyhledávání na webu z aplikace Microsoft Bing k vrácení webového obsahu a výsledků hledání. V Evropském hospodářském prostoru (EHP) můžete nainstalovat aplikace, které implementují poskytovatele webového vyhledávání, aby v Windows Hledání vrátily webový obsah a výsledky hledání.

Screenshot uživatelského rozhraní Windows Vyhledávání s integrací poskytovatele vyhledávání třetích stran.

Poskytovatelé vyhledávání se integrují s vyhledávacím prostředím vytvořením balíčku MSIX se souborem manifestu balíčku, který poskytuje požadované informace pro operační systém pro registraci poskytovatele vyhledávání. Po instalaci je poskytovatel vyhledávání ve výchozím nastavení povolený v prostředích Windows Vyhledávání. V nastavení Windows můžou uživatelé povolit a zakázat nainstalované poskytovatele vyhledávání a spravovat pořadí zprostředkovatelů ve výsledcích hledání. Uživatelé můžou poskytovatele vyhledávání odebrat prostřednictvím stránky Nastavení > Apps > Nainstalované aplikace v nastavení Windows.

Během vývoje a testování, kdy je povolen režim vývojáře a aplikace poskytovatele vyhledávání byla nainstalována neoficiálně na zařízení, objeví se v seznamu dostupných poskytovatelů vyhledávání. Další informace najdete v tématu Nastavení pro vývojáře.

Jakmile je zprostředkovatel vyhledávání zaregistrovaný v operačním systému, předají se dotazy uživatelů do koncového bodu HTTP určeného poskytovatelem v manifestu balíčku pomocí standardizovaného řetězce dotazu. Koncový bod vrátí navrhované výsledky v dokumentu JSON. U každé navrhované adresy URL v dokumentu odpovědi poskytovatel vyhledávání obsahuje adresu URL koncového bodu náhledu, která vrátí dokument HTML zobrazený v podokně náhledu v uživatelském rozhraní výsledků hledání.

Tento článek obsahuje pokyny k vytvoření balíčku aplikace zprostředkovatele vyhledávání a podrobné informace o protokolech pro implementaci koncových bodů HTTP zprostředkovatele vyhledávání.

Vytvoření balíčku aplikace rozšiřitelnosti vyhledávání

Poskytovatelé vyhledávání se registrují v operačním systému tím, že poskytují balíček MSIX, který obsahuje požadované informace o poskytovateli, například název poskytovatele vyhledávání a koncové body HTTP pro návrhy a náhledy.

Rozšíření aplikace poskytovatele vyhledávání

Soubor manifestu balíčku aplikace podporuje mnoho různých rozšíření a funkcí pro Windows aplikace. Formát manifestu balíčku aplikace je definován sadou schémat, která jsou zdokumentována v odkazu na schéma manifestu balíčku . Poskytovatelé vyhledávání deklarují své registrační informace v rámci uap3:AppExtension. Atribut Název rozšíření musí být nastaven na "com.microsoft.windows.websearchprovider".

Zprostředkovatelé vyhledávání by měli zahrnout uap3:Properties jako podřízenou součást uap3:AppExtension. Schéma manifestu balíčku nevynucuje strukturu prvku uap3:Properties jinak než vyžadováním dobře formátovaného XML. Zbytek této části popisuje formát XML, který operační systém očekává, aby úspěšně zaregistroval zprostředkovatele vyhledávání.

<uap3:Extension Category="windows.appExtension">
  <uap3:AppExtension Name="com.microsoft.windows.websearchprovider" DisplayName="SearchExampleApp" Id="ContosoSearchApp" PublicFolder="Public">
    <uap3:Properties>
    <!-- Search provider registration content goes here -->
    </uap3:Properties>
  </uap3:AppExtension>
</uap3:Extension>

Hierarchie elementů

uap3:Properties

  Koncový bod

  Protokol

Koncový bod

Adresa URL koncového bodu HTTPS, do kterého operační systém odešle požadavky vyhledávacího dotazu.

Protokol

Schéma protokolu, které se použije při spuštění zadaných výsledků hledání na webu. Pokud zadaný protokol není zaregistrovaný aplikací v operačním systému, spustí se výchozí prohlížeč pro výsledky hledání. Další informace o registraci schémat protokolu naleznete v tématu uap:Protocol.

DynamicContentEndpoint

Tato funkce se už nepodporuje. Další informace naleznete v tématu Implementace koncového bodu ikony gleam. Adresa URL koncového bodu HTTPS, na který operační systém odešle požadavek na ikonu gleam, která se zobrazí ve vyhledávacím poli.

Ukázkový soubor manifestu balíčku

Následuje příklad souboru manifestu balíčku appmanifest.xml pro registraci poskytovatele služby Windows Search.

<!-- appxmanifest.xml -->

  <uap3:Extension Category="windows.appExtension">
	  <uap3:AppExtension Name="com.microsoft.windows.websearchprovider" DisplayName="CustomSearch" Id="CustomSearchApp" PublicFolder="Public">
		  <uap3:Properties>
			  <Endpoint>https://customsearchendpoint</Endpoint>
			  <Protocol>customsearch</Protocol>
        <DynamicContentEndpoint>https://sub.contoso.com/dynamic</DynamicContentEndpoint>
		  </uap3:Properties>
	  </uap3:AppExtension>
  </uap3:Extension>
  <uap:Extension Category="windows.protocol">
	  <uap:Protocol Name="customsearch"/>
  </uap:Extension>

Implementace koncového bodu návrhu poskytovatele vyhledávání Windows

Poskytovatelé vyhledávání musí zveřejnit a zaregistrovat koncový bod HTTPS, který je volán operačním systémem, když uživatel zadá do vyhledávacího pole Windows. Tento koncový bod by měl vrátit řetězec ve formátu JSON obsahující návrhy hledání zadaného uživatelského dotazu. Obsah musí být doručen přes PROTOKOL HTTPS. Integrace vyhledávání nepodporuje obsah doručované přes protokol HTTP.

Doporučený formát požadavku HTTPS

Požadavek HTTPS na koncový bod návrhu používá následující formát.

https://contoso.com?setlang=en-US&cc=US&qry=

Parametry řetězce dotazu předané koncovému bodu návrhu jsou následující.

Parametr Popis
setlang Lokalita přidružená k dotazu.
cc Kód země přidružený k dotazu.
qry Dotaz poskytnutý uživatelem. Pokud parametr nemá žádnou hodnotu, tj. zobrazí se v řetězci dotazu jako qry=, je uživatelský dotaz prázdný. Poskytovatelé vyhledávání můžou i nadále poskytovat návrhy a stránky náhledu v reakci na prázdný dotaz. POZNÁMKA Operační systém neprovádí žádnou sanitizaci řetězců dotazu. Poskytovatelé vyhledávání můžou při přijetí dotazu implementovat vlastní sanitizaci.

Návrh hlaviček HTTPS odpovědi

Poskytovatel vyhledávání musí do odpovědi z koncového bodu HTTPS poskytujícího návrhy zahrnout následující hlavičky.

  • Access-Control-Allow-Origin: https://www.bing.com
  • Access-Control-Allow-Credentials: true
  • Access-Control-Allow-Methods: GET
  • Content-Type: application/json; charset=utf-8
  • Délka obsahu: [Musí být přesná délka odpovědi]

Formát JSON návrhu odpovědi

Koncový bod HTTPS zprostředkovatele vyhledávání pro návrhy musí vrátit dokument JSON s následujícím formátem. Názvy klíčů musí přesně odpovídat formátu.

Klíč Popis
Návrhy Obsahuje seznam objektů JSON s klíčem Attributes představujícím návrhy spojené s uživatelským dotazem.
Atributy Obsahuje atributy návrhu.
adresa URL Adresa URL návrhu vyhledávání na webu poskytovatele
dotaz Uživatelský dotaz přidružený k návrhu hledání.
previewPaneUrl Adresa URL koncového bodu preview, ze kterého lze načíst náhled návrhu ve formátu HTML.
Text Textový popis návrhu.
{"Suggestions": 
   [{"Attributes": 
     {"url":"https://www.contoso.com/search?q=projection+matrix","query":"projection matrix","previewPaneUrl":"http://www.contoso.com/preview"} ,"Text":"projection matrix"}, 
    {"Attributes": 
     {"url":"https://www.contoso.com/search?q=rotation+matrix","query":"rotation matrix","previewPaneUrl":"http://www.contoso.com/preview"} ,"Text":"rotation matrix"}
    ] 
} 

Implementace koncového bodu poskytovatele služby Windows Search ve verzi Preview

Poskytovatelé vyhledávání vrátí adresu URL koncového bodu HTTPS, který poskytuje náhled stránky přidružené ke každému návrhu ve výsledcích hledání. Odpověď přehledového koncového bodu musí vrátit HTML kód pro funkční stránku.

Náhled formátu požadavku HTTPS

Požadavek HTTPS na koncový bod preview používá následující formát.

https://contoso.com?Darkschemeovr=1

Parametry řetězce dotazu předané koncovému bodu návrhu jsou následující.

Parametr Popis
Darkschemeovr Určuje, jestli má volající Windows systém povolený tmavý motiv. Hodnota je 1, pokud je povolený tmavý motiv a 0, pokud je tmavý motiv zakázán.

Náhled hlaviček odpovědí HTTPS

  • Access-Control-Allow-Origin: https://www.bing.com
  • Access-Control-Allow-Credentials: true
  • Access-Control-Allow-Methods: GET
  • Typ obsahu: text/html; charset=utf-8
  • Délka obsahu: [Musí být přesná délka náhledu html]

Žádosti OPTIONS a sdílení prostředků mezi zdroji (CORS)

Zprostředkovatelé vyhledávání musí podporovat metodu požadavku OPTIONS a odpovídat na tento požadavek pomocí http OK. Pokud koncový bod poskytovatele vyhledávání používá CORS, klient Windows vyhledávání odešle požadavek HTTP OPTIONS před každým požadavkem GET.

Implementovat koncový bod ikony gleam

Poznámka:

Tato funkce gleam už není povolená. Ikony Gleam se už nezobrazují pro všechny webové poskytovatele v EHP. Obsah v této části dokumentace je zastaralý.

Poskytovatelé vyhledávání můžou volitelně poskytnout ikony světlého a tmavého režimu, které se zobrazují na panelu hledání, když je poskytovatel vyhledávání aktuálně povolený. Pokud je v manifestu aplikace zadaný prvek DynamicContentEndpoint , odešle se požadavek na zadanou adresu URL a poskytovatel vyhledávání odpoví souborem JSON ve formátu definovaném níže, který obsahuje adresy URL souborů obrázků ikon a další metadata. Požadavek na ikonu gleam se bude pravidelně posílat, zatímco zprostředkovatel vyhledávání je nejnovějším poskytovatelem, který je v Windows Vyhledávání aktivní. Četnost tohoto požadavku je každých 6 hodin. Při každém spuštění vyhledávání a odemčení zařízení se odešle také požadavek.

Formát požadavku HTTPS s ikonou Gleam

Požadavek HTTPS na koncový bod ikony gleam používá následující formát.

https://www.contoso.com/Gleam?cc=FR&setlang=en-us&dateTime=3%2F29%2F2024%2C%208%3A33%3A56%20PM&deviceOs=windows10&schemaversion=1.0.0

Parametry řetězce dotazu předané koncovému bodu návrhu jsou následující.

Parametr Popis
setlang Lokalita přidružená k dotazu.
cc Kód země přidružený k dotazu.
datum a čas Aktuální datum a čas z klientského zařízení zakódované pomocí adresy URL.
operační systém zařízení Operační systém klientského zařízení. Hodnota tohoto parametru může být Windows10 nebo Windows11. Na Windows 10 je velikost ikony gleam 30x60. Na Windows 11 je velikost ikony gleam 20x36
schemaversion Verze schématu Gleam.

Formát JSON pro odpověď ikony Gleam

Koncový bod HTTPS zprostředkovatele vyhledávání pro ikony gleam musí vrátit dokument JSON s následujícím formátem. Názvy klíčů musí přesně odpovídat formátu. Aktuální verze schématu je 1.0.0.

Klíč Popis
verze schématu Verze schématu Gleam. To by se mělo shodovat s parametrem řetězce dotazu schemaVersion v požadavku.
telemetrické ID Jedinečný identifikátor ikony gleam. Pokud je hodnota v odpovědi stejná jako hodnota aktuální ikony gleam, operační systém tuto ikonu neaktualizuje.
doba expirace Doba platnosti pro ikonu třpytu Musí to být čas v budoucnosti.
obsah Část obsahu odpovědi.
vyhledávací pole na hlavním panelu Obsahuje nastavení pro vyhledávací pole.
lesk Obsahuje nastavení pro ikonu lesku.
alternativní text Alternativní text pro ikonu třpytu
dimensionEnum Hodnota 30x60, pokud byla žádost odeslána z Windows 10 zařízení. Hodnota 20x36, pokud byla žádost odeslána z Windows 11 zařízení.
IconUrl Obsahuje adresy URL pro soubory obrázků se světlými a tmavými ikonami.
světlo Adresa URL souboru obrázku ikony světelného záblesku.
temný Adresa URL souboru obrázku tmavé ikony.
{
  "schemaVersion":"1.0.0",
  "telemetryId":"<unique gleam Id>",
  "expirationTime":"2025-12-09T20:37:13Z",
  "content": {
    "taskbarSearchBox": {
      "gleam":{
        "altText": "<alt text of the gleam>",
        "dimensionEnum": "(30x60 for Windows 10, 20x36 for Windows 11)",
        "iconUrl": {
          "light":"<3p's light gleam url>",
          "dark": "<3p's dark gleam url>"
        }
      }
    }
  }
}

Ověření odpovědi na ikonu Gleam

Odpověď musí obsahovat jak světlou adresu URL prostředku, tak i adresu URL tmavého prostředku. Domény adres URL obrázků ikon musí používat HTTPS a subdoména musí odpovídat subdoméně zadané v elementu DynamicContentEndpoint v souboru manifestu aplikace.

Soubory obrázků musí být ve formátu SVG a maximální velikost souboru je 300 kB. Lesk musí být umístěn uvnitř rámečku o rozměrech 240 × 120 px v SVG.

Pokud je přijata prázdná datová část, aktivní ikona gleamu bude odstraněna a žádný gleam se nezobrazí.