Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Windows Zoeken gebruikt momenteel de webzoekopdracht van Microsoft Bing app om webinhoud en zoekresultaten te retourneren. In de Europese Economische Ruimte (EER) kunt u apps installeren die een webzoekprovider implementeren om webinhoud en zoekresultaten te retourneren in Windows Zoeken.
Zoekproviders integreren met de zoekervaring door een MSIX-pakket te maken met een pakketmanifestbestand dat de vereiste informatie biedt voor het besturingssysteem om de zoekprovider te registreren. Na de installatie is de zoekprovider standaard ingeschakeld in Windows Zoekervaringen. In Windows Instellingen kunnen gebruikers geïnstalleerde zoekproviders in- en uitschakelen en de volgorde van providers in zoekresultaten beheren. Gebruikers kunnen een zoekprovider verwijderen via de pagina Settings > Apps > Geïnstalleerde apps in Windows Instellingen.
Voor ontwikkeling en testen, wanneer er ontwikkelaarsstand is ingeschakeld en de zoekprovider-app op het apparaat gesideload is, wordt deze weergegeven in de lijst met beschikbare zoekproviders. Zie Instellingen voor ontwikkelaars voor meer informatie.
Zodra de zoekprovider is geregistreerd bij het besturingssysteem, worden gebruikersquery's doorgegeven aan het HTTP-eindpunt dat is opgegeven door de provider in hun pakketmanifest met behulp van een gestandaardiseerde querytekenreeks. Het eindpunt retourneert voorgestelde resultaten in een JSON-document. Bij elke voorgestelde URL in het antwoorddocument bevat de zoekprovider de voorbeeldeindpunt-URL, die een HTML-document retourneert dat wordt weergegeven in het voorbeeldvenster in de gebruikersinterface voor zoekresultaten.
Dit artikel bevat richtlijnen voor het maken van een app-pakket voor zoekproviders en informatie over de protocollen voor het implementeren van HTTP-eindpunten van de zoekprovider.
Een app-pakket voor uitbreidbaarheid voor zoeken maken
Zoekproviders registreren zich bij het besturingssysteem door een MSIX-pakket op te geven dat vereiste informatie over de provider bevat, zoals de naam van de zoekprovider en de HTTP-eindpunten voor suggesties en previews.
App-extensie voor zoekprovider
Het manifestbestand van het app-pakket ondersteunt veel verschillende extensies en functies voor Windows apps. De manifestindeling van het app-pakket wordt gedefinieerd door een set schema's die worden gedocumenteerd in de referentie voor het manifestschema van het pakket. Zoekproviders declareren hun registratiegegevens in de uap3:AppExtension. Het kenmerk Naam van de extensie moet zijn ingesteld op com.microsoft.windows.websearchprovider.
Zoekproviders moeten de uap3:Properties opnemen als het onderliggende element van uap3:AppExtension. Het schema van het pakketmanifest dwingt de structuur van het element uap3:Properties niet af, anders dan dat goed gevormde XML vereist is. In de rest van deze sectie wordt de XML-indeling beschreven die het besturingssysteem verwacht om een zoekprovider te kunnen registreren.
<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>
Elementhiërarchie
uap3:Properties
Eindpunt
protocol
Eindpunt
De URL van het HTTPS-eindpunt waarnaar het besturingssysteem zoekqueryaanvragen verzendt.
protocol
Het protocolschema dat wordt gebruikt bij het starten van de opgegeven zoekresultaten op internet. Als het opgegeven protocol niet is geregistreerd door een app in het besturingssysteem, wordt de standaardbrowser gestart voor zoekresultaten. Zie uap:Protocol voor meer informatie over het registreren van protocolschema's.
Voorbeeld van pakketmanifestbestand
Hier volgt een voorbeeld appmanifest.xml pakketmanifestbestand voor het registreren van een Windows Zoekprovider.
<!-- 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>
</uap3:Properties>
</uap3:AppExtension>
</uap3:Extension>
<uap:Extension Category="windows.protocol">
<uap:Protocol Name="customsearch"/>
</uap:Extension>
Een eindpunt voor Windows zoekprovidersuggesties implementeren
Zoekproviders moeten een HTTPS-eindpunt weergeven en registreren dat door het besturingssysteem wordt aangeroepen wanneer een gebruiker in het Windows zoekvak typt. Dit eindpunt moet een tekenreeks met JSON-indeling retourneren die de zoeksuggesties voor de opgegeven gebruikersquery bevat. Inhoud moet worden geleverd via HTTPS. Zoekintegratie biedt geen ondersteuning voor inhoud die via HTTP wordt geleverd.
Suggestie HTTPS-aanvraagindeling
De HTTPS-aanvraag voor het eindpunt voor suggesties gebruikt de volgende indeling.
https://contoso.com?setlang=en-US&cc=US&qry=
De queryreeksparameters die worden doorgegeven aan het eindpunt van de suggestie, zijn de volgende.
| Kenmerk | Beschrijving |
|---|---|
| setlang | De locale instellingen die verbonden zijn met de query. |
| CC | De landcode die is gekoppeld aan de query. |
| qry | De query van de gebruiker. Als de parameter geen waarde heeft, wordt dit weergegeven in de querytekenreeks als qry=, dan is de gebruikersquery leeg. Zoekproviders kunnen nog steeds suggesties en voorbeeldpagina's opgeven als reactie op een lege query.
NOTITIE Het besturingssysteem voert geen opschoning van queryreeksen uit. Zoekproviders kunnen hun eigen opschoning implementeren wanneer de query wordt ontvangen. |
Https-antwoordheaders voor suggesties
Zoekprovider moet ervoor zorgen dat de volgende headers zijn opgenomen in het antwoord van het HTTPS-eindpunt voor suggesties.
- Access-Control-Allow-Origin: https://www.bing.com
- Access-Control-Allow-Credentials: true
- Toegangscontrole-toegestane-methoden: GET
- Inhoudstype: toepassing/json; charset=utf-8
- Lengte van inhoud: [Moet de exacte lengte van het antwoord zijn]
JSON-indeling voor suggestieantwoord
Het HTTPS-eindpunt van de zoekprovider voor suggesties moet een JSON-document met de volgende indeling retourneren. De sleutelnamen moeten exact overeenkomen met de indeling.
| Sleutelcode | Beschrijving |
|---|---|
| Suggesties | Bevat een lijst met JSON-objecten met de sleutel Attributes die de suggesties vertegenwoordigt die zijn gekoppeld aan de gebruikersquery. |
| Kenmerken | Bevat de kenmerken van een suggestie. |
| URL | De URL voor de zoeksuggesties op de website van de provider. |
| zoekopdracht | De gebruikersquery die is verbonden aan de zoeksuggestie. |
| VoorbeeldvensterUrl | De URL van het preview-eindpunt waaruit een HTML-preview van de suggestie kan worden opgehaald. |
| Tekst | De tekstbeschrijving van de suggestie. |
{"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"}
]
}
Een preview-eindpunt van een Windows search provider implementeren
Zoekproviders retourneren de URL van een HTTPS-eindpunt dat een HTML-voorbeeld van de pagina biedt die is gekoppeld aan elke suggestie in de zoekresultaten. Het antwoord van het preview-eindpunt moet de HTML-code retourneren voor een werkende pagina.
Voorbeeld van HTTPS-aanvraagindeling
De HTTPS-aanvraag voor het preview-eindpunt gebruikt de volgende indeling.
https://contoso.com?Darkschemeovr=1
De queryreeksparameters die worden doorgegeven aan het eindpunt van de suggestie, zijn de volgende.
| Kenmerk | Beschrijving |
|---|---|
| Darkschemeovr | Hiermee wordt aangegeven of het aanroepende Windows-systeem het donkere thema heeft ingeschakeld. De waarde is 1 als donker thema is ingeschakeld en 0 als het donkere thema is uitgeschakeld. |
Voorvertoning van HTTPS-antwoordheaders
- Access-Control-Allow-Origin: https://www.bing.com
- Access-Control-Allow-Credentials: true
- Toegangscontrole-toegestane-methoden: GET
- Inhoudstype: tekst/html; charset=utf-8
- Lengte van inhoud: [Moet de exacte lengte van de voorbeeld-HTML zijn]
OPTIONS-aanvraag en CORS (Cross-Origin Resource Sharing)
De Windows Search-client verzendt vóór elke GET-aanvraag een HTTP OPTIONS-aanvraag (CORS preflight). Zoekproviders moeten de OPTIES-aanvraagmethode ondersteunen en reageren met HTTP 200 OK.
Verwante artikelen
Windows developer