Rask og enkel: Opprette et SharePoint-område ved hjelp av REST

Det er mange ressurser rundt som viser hvordan du gjør dette, men jeg kunne ikke finne en omfattende gå-til-kobling, så her er vi.

Du kan opprette et SharePoint-område ved hjelp av REST-API.  Her er et fullt bakt eksempel:

<!--
    SiteRequestForm.html: Samle informasjon og lage et nettsted for brukeren.
-->

<Center>
<tabell>
    <tr>
        <TD>Områdenavn:</TD>
        <TD><inngang type= "tekst" navn= "Områdenavn" ID= "Områdenavn" /></TD>
    </tr>
    <tr>
        <TD ColSpan= "2">
            <inngang type= "Send" ID= "CreateSiteButton" verdi= "Opprette webområdet" />
        </TD>
    </tr>
</tabell>
</Center>

<skriptet src="../Plugins/jQuery-1.11.0.min.js"></skriptet>

<skriptet>
var CreateSiteLogicContainer = {

    createSiteData: {
            "parametere": {
                __metadata: { "type": "SP.WebInfoCreationInformation" },
                URL-adresse: "Paultest1",
                Tittel: "Paultest1",
                Beskrivelse: "resten opprettet web Paul!",
                Språk: 1033,
                WebTemplate: "m",
                UseUniquePermissions: USANN
            }
    },

    createSite: funksjonen () {

        jQuery.support.cors = sann;

        CreateSiteLogicContainer.createSiteData.parameters.Url = $("#SiteName").Val();
        
        $.Ajax({
            URL-adresse: "https://bigapplesharepoint.sharepoint.com/NBAIADev/_api/web/webinfos/add",
            metoden: "POST",

            overskrifter: {
                "Godta": "program/json; OData = detaljert",
                "content-type": "program/json;OData = detaljert",
                «X-RequestDigest": $("#__REQUESTDIGEST").Val()
            },

            data: JSON.stringify(CreateSiteLogicContainer.createSiteData),

            suksess: funksjonen () { varsel("suksess"); },
            feil: funksjonen () { varsel("feil"); }

        });
    },

    wireUpForm: funksjonen () {
        $("#CreateSiteButton").Klikk(funksjonen () {
            varsel("Om å prøve og opprette området.");
            CreateSiteLogicContainer.createSite();
        });
    }


}

CreateSiteLogicContainer.wireUpForm();

</skriptet>

Når vellykket, du får en JSON pakke svar som dette:

image

Min nøkkel tanker og erfaringene fra dette inkluderer:

  • Denne fremgangsmåten bruker jQuery.  I mitt tilfelle, biblioteket jQuery ligger i ".../ plugins. "  Vil du endre å din favoritt JQ plasseringen.
  • Du kan kopiere og lime inn at hele kodebiten i en webdel for innholdsredigering på en side og det skal fungere helt fint.  Du vil endre endepunktet for API-kallet og sørge for at du refererer JQ riktig.
  • URL-adressen er knyttet til din API endepunkt.  I mitt tilfelle, det skaper sekundære områder under https://bigapplesharepoint.com
  • Du trenger ikke å gi en content-Lenght. Noen blogginnlegg og MSDN dokumentet innebærer at du gjør, men skjedde for meg automatisk, som jeg antar er håndteres av $.ajax samtalen selv.
  • Denne linjen er nødvendig for å unngå en "forbudt" svar: «X-RequestDigest": $("#__REQUESTDIGEST").Val().  Det finnes andre måter å gjøre det., men dette er ganske fin.  Jeg har mistet koblingen til bloggen som denne snarveien.  H/T deg, mystisk blogger!

Lykke til og håper dette hjelper noen.

</slutten>

undefinedAbonner på bloggen min.

Følg meg på Twitter på http://www.twitter.com/pagalvin

legg igjen et svar

e-postadressen din vil ikke offentliggjøres. Obligatoriske felt er merket *