Bagikan melalui


Mengaktifkan Penyimpanan Data Anda di Pencarian Federasi Windows

Menjelaskan cara mengaktifkan penyimpanan data Anda untuk diakses oleh layanan web OpenSearch , dan cara menghindari potensi hambatan untuk melakukannya.

Topik ini diatur sebagai berikut:

Ketentuan untuk Penerimaan Permintaan Pencarian

Layanan web OpenSearch yang Anda buat di server web Anda harus memenuhi dua persyaratan berikut:

  • Dapat menerima GET URL kueri dari klien.

  • Izinkan istilah pencarian disematkan di URL.

    Contoh berikut menunjukkan bagaimana istilah pencarian dapat disematkan dalam URL.

    https://example.com/search.aspx?query=terms&param=mysearchword
    

Catatan

Pencarian gabungan tidak mendukung pengiriman POST permintaan ke layanan web.

 

Untuk informasi selengkapnya tentang membuat URL, lihat "Parameter Templat URL" dalam Membuat File Deskripsi OpenSearch di Pencarian Federasi Windows.

Sintaks Kueri yang Didukung

Tidak ada sintaks kueri khusus yang diharapkan di Windows 7. Penyedia OpenSearch menerima istilah apa pun yang dimasukkan pengguna dalam kotak input di Windows Explorer, dan mengodekannya ke dalam URL. Ini melakukannya sesuai dengan templat URL yang dijelaskan dalam "Parameter Templat URL" dalam Membuat File Deskripsi OpenSearch di Pencarian Federasi Windows.

Pengguna mengharapkan bahwa istilah terpisah diperlakukan sebagai ANDed secara implisit bersama-sama. Misalnya, kueri untuk "Microsoft Windows" harus mengembalikan hanya hasil yang berisi "Windows" dan "Microsoft".

Protokol Autentikasi yang Didukung

Windows Federated Search mendukung autentikasi berbasis Windows, dan dapat menyediakan kredensial ke layanan web melalui protokol berikut:

  • NTLM.
  • Kerberos.
  • Dasar (hanya melalui https).
  • Penyedia Dukungan Keamanan (SSP) lain yang diinstal pada Windows yang menyediakan kapasitas kueri tambahan. Lihat dokumentasi SDK Antarmuka SSP untuk terus mengikuti potensi penambahan SSP lainnya.

Mengirim Kueri dan Mengembalikan Hasil Pencarian di RSS atau Atom

Penyedia OpenSearch bertanggung jawab untuk memetakan nilai elemen XML ke properti sistem Windows Shell yang dapat digunakan oleh aplikasi Windows. Tetapi Anda tidak terbatas pada pemetaan default elemen RSS atau Atom standar, dan dapat menyertakan elemen XML kustom di namespace Layanan Windows untuk setiap properti. Misalnya, Anda dapat menambahkan elemen XML kustom Anda sendiri dalam elemen item untuk menyediakan metadata tambahan ke Windows. Anda juga dapat memetakan elemen dari namespace XML lainnya, seperti iTunes

Contoh Output Umpan RSS

Contoh output umpan RSS berikut mengembalikan satu item.

<rss version="2.0" xmlns:media="https://search.yahoo.com/mrss/" xmlns:example="https://example.com/namespace">
   <channel>
      <title>Search Results</title>
      <item>
         <title>An example result</title>
         <link>https://example.com/pictures.aspx?id=01</link>
         <description>This is a test of the emergency search results system. If this were a real emergency result, you'd be reading something more useful.</description>
         <pubDate>Wed, 1 Oct 2008 23:12:00 GMT</pubDate>
         <media:content url="https://example.com/pictures/picture01.jpg" fileSize="212889" type="image/jpeg" height="768" width="1024"/>
         <media:thumbnail url="https://example.com/thumbnails/picture01.jpg" height="120" width="160"/>
         <example:dateTaken>Mon, 22 Sep 2008 23:12:00 GMT</example:dateTaken>
      </item>
   </channel>
</rss>

Untuk informasi selengkapnya tentang pemetaan properti, lihat bagian "Extended Elements in WIndows Federated Search" dan "Custom Property Mappings" di Membuat File Deskripsi OpenSearch di Windows Federated Search.

Pemetaan Otomatis ke Properti Windows Shell

Dalam item di umpan RSS, Anda dapat memilih untuk menyertakan elemen XML lain yang secara otomatis memetakan ke properti sistem Windows Shell. Untuk melakukannya, sertakan elemen yang dinamai sesuai dengan properti Windows Shell dan diawali dengan namespace sistem Windows Shell. Contoh berikut mengilustrasikan deklarasi win=" http://schemas.microsoft.com/windows/2008/propertynamespace" namespace layanan dan penyertaan elemen untuk pemetaan win:System.Contact.PrimaryEmailAddressproperti :

<rss version="2.0" xmlns:example="https://example.com/schema/2009" xmlns:win="http://schemas.microsoft.com/windows/2008/propertynamespace">
...
   <item>
      <title>Someone</title>
      <win:System.Contact.PrimaryEmailAddress>someone@example.com
   </win:System.Contact.PrimaryEmailAddress>
   </item>

Awalan namespace yang digunakan di sini ("win") adalah saran; Anda dapat menggunakan awalan apa pun. Namun, Anda harus menggunakan nama properti Windows Shell yang tepat, dan harus menyertakan Pengidentifikasi Sumber Daya Seragam (URI) yang tepat, seperti yang ditunjukkan dalam contoh berikut:

http://schemas.microsoft.com/windows/2008/propertynamespace

Tentang Properti Sistem Windows Shell

Windows mendefinisikan daftar lengkap Properti Sistem dan format jenis nilai yang diperlukan untuk setiap properti. Dokumentasi untuk properti System.FileExtension Window Shell, misalnya, menentukan bahwa nilai harus berisi titik awal (".docx" dan bukan "docx").

Nilai Tanggal dan Waktu

Format tanggal dan waktu yang disukai adalah ISO-8601, seperti yang ditunjukkan dalam contoh berikut:

2008-01-16T 19:20:30:.45+01:00

Pengembang .NET harus menggunakan kelas DateTime dengan ToString("R") untuk menghasilkan format yang benar.

Untuk informasi selengkapnya tentang pemetaan properti, lihat "Extended Elements in Windows Federated Search" di Membuat File Deskripsi OpenSearch di Windows Federated Search.

Memahami Cara Peta Windows Item ke Tipe File

Mencari di dalam UI Windows Explorer memungkinkan pengguna untuk memperlakukan hasil sebagai file ketika item RSS menunjuk ke file yang disimpan dari jarak jauh. Pengguna dapat menyeret dan meletakkan item ke desktop, dan UI Windows Explorer menampilkan ikon yang benar dan menyediakan menu pintasan yang sesuai. Jika item RSS tidak menunjuk ke file yang disimpan dari jarak jauh, file diperlakukan sebagai tautan, dan pengguna dapat melakukan tindakan di atasnya seperti membuat pintasan atau membukanya di browser.

Diagram alur berikut menunjukkan bagaimana Windows menentukan tipe file item.

diagram alur memperlihatkan jalur dari item ke keputusan untuk memperlakukannya sebagai item jenis tautan web atau sebagai jenis file

Penyedia OpenSearch melakukan langkah-langkah berikut untuk memetakan item ke jenis file:

  • Identifikasi apakah item harus diperlakukan sebagai file atau tautan web.
  • Identifikasi ekstensi nama file yang benar untuk digunakan.

Misalnya, jika item memiliki URL tautan yang menggunakan jalur sistem file (seperti file:///\\server\share\etc\item.ext), penyedia OpenSearch memperlakukan tautan sebagai file dan menentukan jenis menurut ekstensi nama file yang digunakan di jalur (.ext dalam contoh ini).

Jika item menggunakan enclosure RSS standar atau elemen MediaRSS media:content , penyedia OpenSearch mengasumsikan bahwa item tersebut adalah file dan mengidentifikasi ekstensi nama file sebagai berikut:

  • Jika properti System.FileExtension Windows Shell telah dipetakan untuk item tersebut, penyedia menggunakan ekstensi nama file tersebut.
  • Jika properti System.FileExtension Windows Shell belum dipetakan, penyedia menggunakan atribut Type yang ditentukan dalam elemen enclosure atau content. Elemen ini harus berisi MIMEType string, seperti "image/jpeg". Jika dikaitkan MIMEType dengan ekstensi nama file yang terdaftar di komputer klien, item dianggap sebagai file jenis tersebut. MIMEType Jika tidak terkait dengan ekstensi nama file yang terdaftar di komputer klien, item diperlakukan sebagai jenis tautan web. Penyedia OpenSearch tidak mencoba mengurai atribut Url untuk menemukan ekstensi nama file.
  • MIMEType Jika dikaitkan dengan ekstensi nama file yang terdaftar di komputer klien, penyedia menentukan apakah ekstensi nama file adalah jenis file web yang diketahui (.htm, .html, .asp, .aspx, .php, .swf, .stm). Jika demikian, jenis file dianggap sebagai jenis tautan web; jika tidak, itu dianggap sebagai jenis file. Misalnya, jika dikaitkan MIMEType "text/html" dengan ekstensi nama file .htm, item tersebut dianggap sebagai tautan web alih-alih sebagai jenis file .htm.

Menghindari Potensi Hambatan untuk Mengaktifkan Penyimpanan Data

Beberapa penyimpanan data tidak menyediakan layanan web yang kompatibel dengan OpenSearch tetapi masih dapat disambungkan ke Windows Federated Search. Penyimpanan data tersebut meliputi:

  • Indeks jarak jauh dengan metode autentikasi yang tidak didukung dalam Pencarian Federasi Windows 7.

    Contohnya termasuk autentikasi berbasis formulir dan metode autentikasi kustom lainnya.

  • Jika penyimpanan publik bernilai tinggi memiliki API web publik, siapa pun dapat menulis layanan web lain yang kompatibel dengan OpenSearch dan memanggil API tersebut di belakang layar.

    Contohnya termasuk Pustaka Kongres, dan database penelitian medis.

  • Penyimpanan atau indeks data perusahaan eksklusif, dan penyimpanan manajemen konten warisan, yang mungkin tidak mungkin untuk mengimplementasikan ujung depan.

Namun, ada alternatif yang dapat menghindari hambatan untuk mengaktifkan penyimpanan data. Berikut ini adalah beberapa alternatif tersebut:

Untuk menulis layanan web middle-man saat Anda tidak dapat memodifikasi layanan web untuk sumber data yang ada, atau layanan web menyediakan API kustom:

  1. Tulis layanan web middle-man yang dapat menerima kueri Windows 7.
  2. Sambungkan ke sumber data Anda, dan ambil hasil kueri.
  3. Format ulang hasil dalam format RSS atau Atom.
  4. Mengembalikan hasilnya ke klien Windows 7.
  5. Perhatikan bahwa untuk layanan data perusahaan dan banyak layanan data Internet, Anda mungkin perlu meneruskan kredensial pengguna melalui atas nama layanan web untuk melakukan pemangkasan hasil berdasarkan izin pengguna.

Untuk menggunakan mesin pencari yang ada saat Anda tidak dapat mengaktifkan penyimpanan data publik:

  1. Gunakan mesin pencari publik yang sudah mendukung OpenSearch dengan RSS. Anda dapat melakukannya dengan menyediakan file .osdx kepada pengguna yang memiliki templat URL yang membatasi hasil hanya untuk domain spesifik Anda.

  2. Lihat contoh deskripsi OpenSearch berikut ini untuk hanya mencari konten Bantuan untuk Windows dengan menggunakan kueri terhadap live.com.

    <?xml version="1.0" encoding="UTF-8"?>
    <OpenSearchDescription xmlns="https://a9.com/-/spec/opensearch/1.1/">
      <ShortName>Windows Help</ShortName>
      <Description>Search Windows Help using the live.com search engine</Description>
      <Language></Language>
      <Url type="text/html" template="https://windowshelp.microsoft.com/windows/search.aspx?=&amp;qu={searchTerms}"/>
      <Url type="application/rss+xml" template="https://api.search.live.com/rss.aspx?source=web&amp;query={searchTerms} site:windowshelp.microsoft.com&amp;web.count=50"/>
    </OpenSearchDescription>
    

Untuk menggunakan server pengindeksan yang sudah ada yang mendukung OpenSearch saat Anda tidak dapat mengaktifkan penyimpanan atau indeks data perusahaan eksklusif:

  1. Pilih server pengindeksan yang sudah ada yang mendukung OpenSearch untuk mengindeks konten Anda, seperti SharePoint Search Server.
  2. Buat file .osdx yang membatasi hasil dari indeks SharePoint hanya untuk yang dari server Anda dengan menggunakan sintaks KeyWord mereka dalam templat URL.

Untuk menulis penyimpanan data sisi klien jika solusi khusus sisi server tidak berfungsi:

  1. Tulis sumber data OpenSearch sisi klien yang berada di antara penyedia Windows OpenSearch dan sumber data eksternal.
  2. Gunakan IOpenSearchSource Interface API di Windows SDK untuk membuat file .searchconnector-ms yang dikonfigurasi dengan tepat di mana Windows Explorer dapat memanggil implementasi Anda dengan parameter kueri. Implementasi Anda kemudian dapat mengembalikan hasil yang diformat dalam format RSS atau Atom. Melakukannya memungkinkan implementasi Anda untuk menyediakan UI autentikasi kustom dan menyambungkan ke sumber data menggunakan API miliknya.

Catatan

Membuka file .osdx membuat file .searchconnector-ms (konektor pencarian) di direktori %userprofile%/searches dan menempatkan tautan ke file tersebut di direktori %userprofile%/links.

 

Sumber Daya Tambahan

Untuk informasi tambahan tentang menerapkan federasi pencarian ke penyimpanan data jarak jauh menggunakan teknologi OpenSearch di Windows 7 dan yang lebih baru, lihat "Sumber Daya Tambahan" di Pencarian Federasi di Windows.

Pencarian Federasi di Windows

Memulai Pencarian Federasi di Windows

Menyambungkan Layanan web Anda di Pencarian Federasi Windows

Membuat File Deskripsi OpenSearch di Pencarian Federasi Windows

Mengikuti Praktik Terbaik dalam Pencarian Federasi Windows

Menyebarkan Konektor Pencarian di Pencarian Federasi Windows