Snel en eenvoudig: Een SharePoint-Site met behulp van REST maken

Er zijn een heleboel middelen rond die laten zien hoe dit te doen, maar ik kon het niet vinden een uitgebreide Ga-naar-link, Dus hier zijn we.

U kunt een SharePoint-site met behulp van de REST API.  Hier is een volledig gebakken voorbeeld:

<!--
    SiteRequestForm.html: Informatie verzamelen en een site maken voor de gebruiker.
-->

<Center>
<tabel>
    <tr>
        <TD>Naam van de site:</TD>
        <TD><input type= "tekst" naam"SiteName =" id"SiteName =" /></TD>
    </tr>
    <tr>
        <TD ColSpan= "2">
            <input type= "submit" id"CreateSiteButton =" waarde= "Maak de Site" />
        </TD>
    </tr>
</tabel>
</Center>

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

<script>
var CreateSiteLogicContainer = {

    createSiteData: {
            "parameters": {
                __metadata: { "type": "SP.WebInfoCreationInformation" },
                URL: "Paultest1",
                Titel: "Paultest1",
                Beschrijving: "rest-gemaakt web door Paul!",
                Taal: 1033,
                WebTemplate: "St",
                UseUniquePermissions: vals
            }
    },

    createSite: functie () {

        jQuery.support.cors = True;

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

            headers: {
                "accept": "application/json; odata = verbose",
                "content-type": "application/json;odata = verbose",
                "X-RequestDigest": $(#__REQUESTDIGEST"").Val()
            },

            gegevens: JSON.stringify(CreateSiteLogicContainer.createSiteData),

            succes: functie () { waarschuwing("succes"); },
            fout: functie () { waarschuwing("fout"); }

        });
    },

    wireUpForm: functie () {
        $("#CreateSiteButton").Klik op(functie () {
            waarschuwing("Ongeveer om te proberen en de site hebt gemaakt.");
            CreateSiteLogicContainer.createSite();
        });
    }


}

CreateSiteLogicContainer.wireUpForm();

</script>

Wanneer succesvol, krijg je een pakje JSON in reactie als dit:

image

Mijn belangrijkste gedachten en lessen uit deze opnemen:

  • Deze aanpak maakt gebruik van jQuery.  In mijn geval, mijn jQuery bibliotheek bevindt zich "../ plugins. "  U zult willen veranderen om te wijzen op uw favoriete JQ locatie.
  • U kunt kopiëren en plakken dat hele fragment in een webonderdeel Inhoudseditor op een pagina en het zou moeten werken prima.  U zult willen wijzigen het eindpunt van de API-aanroep en zorg ervoor dat u verwijst naar JQ correct.
  • De URL is ten opzichte van uw API eindpunt.  In mijn geval, het het creëren van subsites onder https://bigapplesharepoint.com
  • U hoeft niet te bieden een inhoud-lengte. Sommige blog posts en MSDN document impliceert dat jij, maar gebeurde voor mij automatisch, die ik neem aan dat wordt afgehandeld door de $.ajax aanroep zelf.
  • Deze regel is nodig om te voorkomen dat een "verboden" antwoord: "X-RequestDigest": $(#__REQUESTDIGEST"").Val().  Er zijn andere manieren om het te doen, maar dit is vrij aardig.  Ik heb de link naar blog die deze snelkoppeling verloren.  H/T aan u, mysterieuze blogger!

Veel geluk en hoop dat die dit helpt iemand uit.

</einde>

undefinedAbonneren op mijn blog.

Volg mij op Twitter op http://www.twitter.com/pagalvin

Laat een antwoord achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd *