kategori Achiv: RETE

HTTP 406 Erreur lè w ap itilize angilè $http.get kont SharePoint POZE fini pwen

Ajou: Se Marc Piblisite ndersson ki te atire atansyon sa a gwo moso pyès enfòmasyon sou: http://blogs.Office.com/2014/08/13/json-light-Support-Rest-sharepoint-api-Released/. Sa byen eksplike :).

Sa ka fè pi mal pase tout Tit de pòs blog yon tout tan tout tan! Anyhoo.

Mwen sonje bagay fè tout prototypes m' kont yon bagay O365. Mwen gen bagay pèsonèl mwen konsa, mwen pa gen pou enkyete sou ki afekte okenn lòt moun. Kòm yon a kote-sonje lè nou fè apèl a effectué autour virtuel pou machin avanse ordinateurs nou ak bab PANYÒL-SQL sèvè, IIS, décider vs Hyper-V. VMWare? Anyhoo...

Mwen te devlope yon app itilize angilè anviwònman sa a ki fè sa ki nan, pami lòt bagay, sa a:

$http.get(serverUrl)
.siksè(fonksyon(done, estati, en-têtes, config) {

var getLinksResponse = done;

getLinksResponse.value.forEach(fonksyon(theResult) {

// Et sou Et pour mous

Sa t ap travay jis byen nan de diferan SharePoint online environnements. Sepandan, Lè m' collègue te ports li pou yon bagay Cloudshare, Jezi t' ap yon HTTP 406 erreur (ki te premye fwa a, mwen te gen tout tan tout tan sa a, Se konsa... yay, Mwen panse). Nou te fè yon ti rechèch e te note ke "Aksepte" lento te wete. Sou liy SharePoint li te genyen pafètman kontan ak:

Aksepte: aplikasyon/json

Men bagay cloudshare a (ki se SP sou prem, hébergé nan yon virtuel sèvè) yo te vle a klasik "odata = détaillé" te ajoute nan tou:

Aksepte: aplikasyon/json;odata = détaillé

Pou ka ranje sa, nou te ajoute lento a nan ka konsa:

var config = {en-têtes: {
'Asepte': ' aplikasyon/json;odata = détaillé '
}
};

$http.get(serverUrl,config)
.siksè(fonksyon(done, estati, en-têtes, config) {

var getLinksResponse = done;

getLinksResponse.value.forEach(fonksyon(theResult) {

// Et sou Et pour mous

Sa a debarase de la 406, Men, li te tou chanje fòma repons lan. Li te genyen plis... détaillé. (haha!) Chanjman plis ont mande Et isit la se rezilta final lan a:

var config = {en-têtes: {
'Asepte': ' aplikasyon/json;odata = détaillé '
}
};

$http.get(serverUrl,config)
.siksè(fonksyon(done, estati, en-têtes, config) {

var getLinksResponse = done;

getLinksResponse.d.results.forEach(fonksyon(theResult) {

// Et sou Et pour mous

Sa sèlman fè yo tounen yon 30 ti pwoblèm pou nou, Se konsa nou lucked. Yon moun trouve sa itil.

</fen>

Kijan pou Spécifier moun tankou yon objektif Recherche / Contenu sous ki itilize SharePoint 2013 LÒT API

Mwen te gen rezon pou travay avèk SharePoint a 2013 API rechèch via pou la pwemye fwa yo POZE. Mwen te vle pou fè rechèch pou moun, pa dokiman. Kle a apwann isit la se sa ou espesifye sous contenu via GUID li (ou pou pi piti nan ka sa). Suivant jQuery extrait montre kouman:

    loadExpertsAsync: fonksyon() {

        jQuery.support.cors = vre;

        $.ajax({
            adrès entènèt: sa a.CreateFullApiUrl() +
                "?querytext = 'portails'&sourceid = 'b09a7990-05ea-4af9-81ef-edfab16c4e31'" +
                "&selectproperties ='LinkedInProfileUrl,GoogleCirclesProfileUrl,BALargeProfilePictureUrls,BAGridPictures,WorkEmail,Compétences,AboutMe,Enterè,JobTitle,PastProjects,PictureURL,PreferredName,TwitterHandle,LinkedInProfileUrl,PreferredName,GoogleCirclesProfileUrl'" +
                "&rowlimit = 99",
            metòd: "JWENN",
            en-têtes: { "Aksepte": "aplikasyon/json; odata = détaillé" },
            kachèt: pa vre,
            siksè: fonksyon (rezilta) {

Nan ka mwen, M' ap kouri pou API a kont SharePoint sou liy. Pou jwenn GUID a, Mwen te swiv étapes sa yo:

  1. Accès sant admin SharePoint
  2. Fè chwa "recherche" de la navigasyon men gòch
  3. Sélectionnez "Gérer sous rezilta yo"
  4. Fè chwa "Pèp lokal rezilta"
  5. Gade nan adrès entènèt la.

Adrès entènèt m' gade yon bagay tankou:

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

Paramètre sourceid a se sa te travay pou mwen.

(Mwen konprann ke sourceid a aktyèlman ka gen yon kalite bagay pèmanan ak SP, but I’ll always check anyway 🙂 ).

</fen>

undefinedVous pou m' blog.

Swiv mwen sou Twitter nan http://www.twitter.com/pagalvin

Egzanp SharePoint lòt apèl

Isit la se yon ansanm echantiyon lòt apèl sa travay pou m' ka fè pou ou tou. Patid 02/2014, there are two examples 🙂

  1. Référence yon kolòn ak mache sou non li
  2. Yon kolòn plizyè Sélectionnez referans
  3. Fè yon moun chache via lòt

 

M ap ajoute sa a tankou lè kat.

Isit la, gen kèk encre itil mwen jwenn osi byen:

Référence yon kolòn ak mache sou non li

Mwen kreye yon lis personnalisé ak yon kolòn ki rele "Blog otè" (ant Blog Et otè).

A $select pou référence kolòn sa se:

image

Ranplase senpleman pase ak "_x0020_". Nou wè _x0020_ nan anpil egzanp travèse internets yo ak lòt pa gen diferans.

Si ou pa fè sa, w ap ka jwenn yon mesaj manti konsa:

Espresyon an “Blog otè” pa valab.

Fasil ase.

Yon kolòn plizyè Sélectionnez Recherche referans

Mete sou pye:

  1. Kreye yon lis repòtaj ki rele kategori.
  2. Ajoute kategori kèk. Mwen te ajoute kategori thusly:image
  3. Kreye yon lòt koutim lis ki te rele MockBlog ak ajoute kategori kòm yon kolòn plizyè sélectionnez lis (ou kote kolòn si se jan ou ti pen).

Ajoute yon atik nan lis Mockblog ou Et w ap pare.

Yon Ajax stil apèl itilize jQuery pwal sanble yon bagay tankou sa:

serverUrl  = "/_api/web/lis/GetByTitle('MockBlog')/atik" +
             "?$fè chwa = Tit,Kategori/Tit,Blog_x0020_Author/Tit" + 
             "&$pran estansyon = Blog_x0020_Author,Kategori";

Nou ap di SharePoint "ban m' Tit pou tout kategori (Kategori/Tit). Obtenir réel valè pou Tit pa $pran estansyonLè nou konsidere pi lis kategori la." (M' Jardins pour pwobableman ase k'ap fè jennès, Men, jan mwen menm entèpretasyon li).

Si w ap fè sa via JavaScript Et itilize Fiddler pou ap chèche la sortie, ou gen yon bagay tankou sa an retou:

 

image

(CI-dessus a se yon bagay JSON)

Fè yon moun chache via lòt

Mwen blogged osijè de sa grenn pa grenn. Kle a se pou spécifier sourceid paramètre yon valè ki se GUID de sous contenu pèp lokal la. (Contenu sous yo te itilize pou y' a rele étendues Et se m-o-m pas twò difisil pou rele tout yon entansyon pou mwen!).

Lire ankò sou sa isit la: http://www.mstechblogs.com/paul/?p=10385

 

</fen>

undefinedVous pou m' blog.

Swiv mwen sou Twitter nan http://www.twitter.com/pagalvin

Rapide Et fasil: Kreye yon sit SharePoint ki itilize lòt

Gen anpil resous autour montre sa kijan pou fè sa, Men, mwen pa t kapab jwenn yon comprehensive ale-pou lyen, Se konsa isit la nou ye.

Ou kapab kreye yon sit SharePoint ki itilize API rete a.  Isit la se yon ekzanp entièrement kwit nan fou:

<!--
    SiteRequestForm.html: Kolekte enfòmasyon ak kreye yon kote ki gen pou moun kap itilize li an.
-->

<sant>
<tab>
    <tr>
        <td>Kote ki gen non:</td>
        <td><enèji absòbe tip= "tèks" fe-apel= "SiteName" didantite= "SiteName" /></td>
    </tr>
    <tr>
        <td colspan= "2">
            <enèji absòbe tip= "soumèt" didantite= "CreateSiteButton" valè= "Kreye sit la" />
        </td>
    </tr>
</tab>
</sant>

<script src="../Plugins/jquery-1.11.0.min.js"></script>

<script>
var CreateSiteLogicContainer = {

    createSiteData: {
            "paramètres": {
                __metadata: { "jan de": "SP.WebInfoCreationInformation" },
                Adrès entènèt: "Paultest1",
                Tit: "Paultest1",
                Dekri teren: "rete te kreye web pa Paul!",
                Lang: 1033,
                WebTemplate: "sts",
                UseUniquePermissions: pa vre
            }
    },

    createSite: fonksyon () {

        jQuery.support.cors = vre;

        CreateSiteLogicContainer.createSiteData.parameters.Url = $("#SiteName").val();
        
        $.ajax({
            adrès entènèt: "https://bigapplesharepoint.sharepoint.com/NBAIADev/_api/web/webinfos/add",
            metòd: "PÒS",

            en-têtes: {
                "aksepte": "aplikasyon/json; odata = détaillé",
                contenu tip"": "aplikasyon/json;odata = détaillé",
                "X RequestDigest": $(NIMEWO __REQUESTDIGEST"").val()
            },

            done: JSON.stringify(CreateSiteLogicContainer.createSiteData),

            siksè: fonksyon () { sou kiviv("siksè"); },
            erreur: fonksyon () { sou kiviv("erreur"); }

        });
    },

    wireUpForm: fonksyon () {
        $("#CreateSiteButton").Sur(fonksyon () {
            sou kiviv("A pou eseye kreye sit la.");
            CreateSiteLogicContainer.createSite();
        });
    }


}

CreateSiteLogicContainer.wireUpForm();

</script>

Lè siksè, ou jwenn yon paquet JSON nan repons konsa:

image

Kle lide m' Et apprentissage de sa a genyen ladan:

  • Metòd sa a itilize jQuery.  Nan ka mwen, bibliyotèk jQuery mwen trouve nan "../ plugins. "  Ou ap vle pou chanje sa pou montre m kote JQ pi renmen ou ye.
  • Ou kapab kopi e pat extrait tout sa antre nan pati entènèt Contenu editè yon nan yon paj Et li ta dwe travay jis byen.  Ou ap vle chanje a fin point D' API apèl e asire w ou référence JQ kòrèkteman.
  • Adrès entènèt la se relative to Point API ou.  Nan ka mwen, li kreye pozisyon de baz anba https://bigapplesharepoint.com
  • Ou pa bezwen pou bay yon longueur contenu. Kèk blog postes Et MSDN dokiman implique pou ou fè, Men te rive pou m' otomatikman, ki mwen sipoze te lantremiz $.ajax apèl tèt li.
  • Liy sa a mande pou kapab evite yon repons "entèdi": "X RequestDigest": $(NIMEWO __REQUESTDIGEST"").val().  Genyen lòt fason pou ou fè l, Men sa bèl bèl.  Mwen te pèdi lyen pou blog ki te founi raccourci sa a.  H/T ou, mistik blogger!

Bòn chans nou ak tout espwa sa a te ede yon moun deyò.

</fen>

undefinedVous pou m' blog.

Swiv mwen sou Twitter nan http://www.twitter.com/pagalvin

Rapide Et senp: SharePoint, lòt, ki rele sèlman Renvoie 100 Dosye

Mwen te gen t ap travay sou yon piblik fas sit entènèt pou m' SharePoint pratique isit la nan New York epi li itilize yon bann JavaScript ak lòt apèl pou montre contenu.

Pandan devlopman mainline, Mwen kreye yon ti dataset ak sèlman 10 ou se konsa èskonbwit nan yon lis personnalisés Et apèl REPO m' yo tout kote yo te.  Yon sèl fwa m' a leve lis pou kèk santèn èskonbwit enfòmasyon pou tès pou prévu la croissance, Mwen te twouve ke mwen t' ap exactement 100 èskonbwit ki te retounen nan do m' apèl yo te rete.

Sa se yon bagay trè fasil pou adrès ou.  Nan ka mwen (e mwen kwè nan pi fò ka yo), defo a rete rele pou SharePoint (e petèt tankou yon endistri estanda?) retounen 100 èskonbwit.  Pou li retounen nan pi plis pase a defo, sèvi ak paramètre $top a sou apèl ou, menm jan nan:

PRAN /Insights Dev/_api/web/lists/GetByTitle('MockBlog')/atik?$fè chwa = Didantite,Tit,Kategori/Tit,Blog_x0020_Author/Tit,DatePublished,BlogSummary&$pran estansyon = Blog_x0020_Author,Kategori&$filtre =&$sou tèt = 9999

Mwen pran 9999 nan ka sa depi mwen konnen sa growth-wise, p ap gen plis pase 200 ou se konsa èskonbwit vin ajoute nan lis sa a nan yon ane.  Si l' vin ungainly, nou ka aplike kèk échange desann nan wout la.

</fen>

undefinedVous pou m' blog.

Swiv mwen sou Twitter nan http://www.twitter.com/pagalvin