taggarkiv: Sök

Hur du anger människor som en sökomfattning / Använda SharePoint-innehållskälla 2013 REST API

Jag hade anledning att arbeta med SharePoint 2013 Sök-API via resten för första gången. Jag ville söka efter personer, inte dokument. Nyckeln för att lära sig här är att anger du innehåll källor via dess GUID (eller åtminstone i detta fall). Följande jQuery utdrag visar hur:

    loadExpertsAsync: funktionen() {

        jQuery.support.cors = sant;

        $.Ajax({
            URL: Detta.CreateFullApiUrl() +
                "?querytext = "portaler"&SourceId = "b09a7990-05ea-4af9-81ef-edfab16c4e31"" +
                "&selectproperties ='LinkedInProfileUrl,GoogleCirclesProfileUrl,BALargeProfilePictureUrls,BAGridPictures,WorkEmail,Färdigheter,AboutMe,Intressen,Yrkestitel,PastProjects,PictureURL,PreferredName,TwitterHandle,LinkedInProfileUrl,PreferredName,GoogleCirclesProfileUrl "" +
                "&ROWLIMIT = 99",
            metoden: "FÅ",
            headers: { "Acceptera": "Application/json; OData = verbose" },
            cache: falskt,
            framgång: funktionen (resultat) {

I mitt fall, Jag kör API mot SharePoint online. Att få GUID, Jag följde stegen:

  1. Komma åt SharePoint admin center
  2. Välj "Sök" från den vänstra navigeringen
  3. Välj hantera"resultatet källor"
  4. Välj "Lokalbefolkningen resultat"
  5. Titta på Webbadressen.

Min URL såg något liknande:

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

Parametern sourceid är vad arbetat för jag.

(Jag förstår att målentiteten kan faktiskt vara ett slags permanent sak med SP, men jag ska alltid kontrollera ändå 🙂 ).

</slutet>

undefinedPrenumerera på min blogg.

Följ mig på Twitter vid http://www.twitter.com/pagalvin

Exempel SharePoint resten samtal

Här är en uppsättning prov resten samtal som fungerar för mig och kan hjälpa dig också. Som av 02/2014, there are two examples 🙂

  1. Referera till en kolumn med blanksteg i namnet
  2. Referens en Multi-Välj kolumn
  3. Människor söka via resten

 

Jag lägger till detta som tiden går.

Här är några användbara bläck som jag har hittat samt:

Referera till en kolumn med blanksteg i namnet

Jag skapa en anpassad lista med en kolumn som heter "Blog författare" (utrymmet mellan blogg och författare).

$select att referera till kolumnen är:

image

Helt enkelt ersätta utrymmet med "_x0020_". Vi ser _x0020_ i många exempel över internets och resten är inte annorlunda.

Om du inte gör som, Du kan få ett felmeddelande liknande detta:

Uttrycket “Blogg författare” är inte giltig.

Lätt nog.

Referens en Multi-Välj uppslagskolumn

Ställ in:

  1. Skapa en anpassad lista som heter kategorier.
  2. Lägga till vissa kategorier. Jag la kategorier thusly:image
  3. Skapa en anpassad lista som kallas MockBlog och lägga till kategorier som en Multi-Välj lista kolumn (eller webbplatskolumn om det är hur du slår).

Lägga till vissa objekt i listan Mockblog och du är redo.

En Ajax stil samtal med hjälp av jQuery kommer att se ut så här:

serverUrl  = "/_api/web/listor/GetByTitle("MockBlog")/objekt" +
             "?$Välj = Title,Kategorier/titel,Blog_x0020_Author/titel" + 
             "&$Expandera = Blog_x0020_Author,Kategorier";

Vi säger SharePoint "ge mig titeln för alla kategorier (Kategorier/titel). Få de faktiska värdena för Avdelning genom $Expanderaning listan Kategorier." (Min vilsam omskriva är nog ganska lös, men detta hur jag tolkar det).

Om du gör detta via JavaScript och använder spelman titta på utdata, du får något sådant i gengäld:

 

image

(Ovanstående är en JSON objekt)

Människor söka via resten

Jag bloggade om detta separat. Viktiga är att ange en sourceid parameter vars värde är GUID för lokalbefolkningen innehållskällan. (Innehållskällor brukade kallas omfattningar och det är min-oh-my så hårt att inte kalla allt ett scope för mig!).

Läs mer om det här: http://www.mstechblogs.com/paul/?p=10385

 

</slutet>

undefinedPrenumerera på min blogg.

Följ mig på Twitter vid http://www.twitter.com/pagalvin