Tag-arkiver: Søg

Sådan angives mennesker som et søgeområde / Udgangspunktet for indeksering ved hjælp af SharePoint 2013 REST API

Jeg havde grund til at arbejde med SharePoint 2013 Search API via resten for første gang. Jeg ønskede at søge efter personer, ikke dokumenter. Nøglen læring her er, at angiver du indholdskilder via sin GUID (eller i det mindste i dette tilfælde). Følgende jQuery kodestykke viser hvordan:

    loadExpertsAsync: funktion() {

        jQuery.support.cors = True;

        $.Ajax({
            URL-adresse: Dette.CreateFullApiUrl() +
                "?querytext = 'hjemmesider'&SourceId = 'b09a7990-05ea-4af9-81ef-edfab16c4e31'" +
                "&selectproperties ='LinkedInProfileUrl,GoogleCirclesProfileUrl,BALargeProfilePictureUrls,BAGridPictures,WorkEmail,Færdigheder,AboutMe,Interesser,Jobtitel,PastProjects,PictureURL,PreferredName,TwitterHandle,LinkedInProfileUrl,PreferredName,GoogleCirclesProfileUrl'" +
                "&ROWLIMIT = 99",
            metode: "FÅ",
            overskrifter: { "Acceptere": "ansøgning/json; OData = verbose" },
            cache: falsk,
            succes: funktion (resultat) {

I mit tilfælde, Jeg kører API mod SharePoint online. At få GUID'EN, Jeg har fulgt disse trin:

  1. Adgang til SharePoint administration
  2. Vælg "Søg" fra den venstre hånd navigation
  3. Vælg Administrer"resultatet kilder"
  4. Vælg "Lokale folk resultater"
  5. Kig på URL-adressen.

Min URL kiggede noget som:

https://xyzzy-admin.sharepoint.com/_layouts/15/searchadmin/EditResultSource.aspx?level=tenant&sourceid=b09a7990%2D05ea%2D4af9%2D81ef%2Dedfab16c4e31&view=1

Parameteren sourceid er hvad arbejdede nemlig mig.

(Jeg forstår at sourceid faktisk kan være en slags permanent ting med SP, men jeg vil altid tjekke alligevel 🙂 ).

</slutningen>

undefinedAbonner på min blog.

Følg mig på kvidre på http://www.twitter.com/pagalvin

Eksempel SharePoint resten opkald

Her er et sæt af prøven resten opkald, der arbejder for mig og kan hjælpe dig ud samt. Som af 02/2014, there are two examples 🙂

  1. Referere til en kolonne med mellemrum i navn
  2. Referere til en multi-Vælg kolonne
  3. Udføre en People Search via resten

 

Jeg vil tilføje, at som tiden går.

Her er nogle nyttige trykfarver, jeg har fundet, samt:

Referere til en kolonne med mellemrum i navn

Jeg oprette en brugerdefineret liste med en kolonne med navnet "Blog forfatter" (plads mellem Blog og forfatter).

$select til at henvise til denne kolonne er:

image

Du skal blot udskifte rummet med "_x0020_". Vi ser _x0020_ i mange eksempler på tværs af internets og resten er ikke anderledes.

Hvis du ikke gør det, du risikerer at få en fejlmeddelelse som denne:

Udtrykket “Blog forfatter” er ikke gyldigt.

Let nok.

Referere til en multi-Vælg opslagskolonne

Opsætning af:

  1. Oprette en brugerdefineret liste navngivne kategorier.
  2. Tilføj nogle kategorier. Jeg har tilføjet kategorier thusly:image
  3. Oprette et andet brugerdefineret liste kaldet MockBlog og føje kategorier som en multi-Vælg listekolonne (eller webstedskolonne hvis det er hvordan du rulle).

Tilføje nogle elementer på listen Mockblog og du er klar.

En Ajax stil opkald ved hjælp af jQuery vil se noget som dette:

serverUrl  = "/_api/web/lister/GetByTitle('MockBlog')/elementer" +
             "?$Vælg = Title,Kategorier/titel,Blog_x0020_Author/titel" + 
             "&$Udvid = Blog_x0020_Author,Kategorier";

Vi fortæller SharePoint "Giv mig titlen for alle kategorier (Kategorier/titel). Få de faktiske værdier for Titel ved $UdvidING listen kategorier." (Min afslappende omskrive er sandsynligvis temmelig løs, men dette hvordan jeg fortolke det).

Hvis du gør det via JavaScript og brug af Fiddler til at se på output, du får noget som dette til gengæld:

 

image

(Ovenstående er en JSON objekt)

Udføre en People Search via resten

Jeg blogges om dette særskilt. Centrale er at angive en sourceid parameter hvis værdi er GUID'EN for den lokale befolkning indholdskilde. (Indholdskilder plejede at blive kaldt dækningsområder og det er min-oh-my så svært ikke at kalde alt en mulighed for mig!).

Læs mere om det her: http://www.mstechblogs.com/paul/?p=10385

 

</slutningen>

undefinedAbonner på min blog.

Følg mig på kvidre på http://www.twitter.com/pagalvin