Facile e veloce: Creare un sito di SharePoint utilizzando il resto

Ci è un sacco di risorse intorno che mostrano come fare questo, ma non riuscivo a trovare un link completo go-a, così siamo qui.

È possibile creare un sito di SharePoint utilizzando l'API REST.  Ecco un esempio completamente al forno:

<!--
    SiteRequestForm.html: Raccogliere informazioni e creare un sito per l'utente.
-->

<centro>
<tabella>
    <TR>
        <TD>Nome del sito:</TD>
        <TD><ingresso tipo= "testo" nome= "NomeSito" Identificazione= "NomeSito" /></TD>
    </TR>
    <TR>
        <TD colspan= 2"">
            <ingresso tipo= "Invia" Identificazione= CreateSiteButton"" valore= "Crea il sito" />
        </TD>
    </TR>
</tabella>
</centro>

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

<script di>
var CreateSiteLogicContainer = {

    createSiteData: {
            «parametri": {
                __metadata: { "tipo": "SP.WebInfoCreationInformation" },
                URL: "Paultest1",
                Titolo: "Paultest1",
                Descrizione: "web resto-creato da Paolo!",
                Lingua: 1033,
                WebTemplate: m."",
                UseUniquePermissions: falso
            }
    },

    createSite: funzione () {

        jQuery.support.cors = true;

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

            intestazioni: {
                "Accettare": "application/json; OData = verbose",
                "content-type": "application/json;OData = verbose",
                "X-RequestDigest": $("#__REQUESTDIGEST").Val()
            },

            dati: Stringify(CreateSiteLogicContainer.createSiteData),

            successo: funzione () { avviso("il successo"); },
            errore: funzione () { avviso("errore"); }

        });
    },

    wireUpForm: funzione () {
        $("#CreateSiteButton").fare clic su(funzione () {
            avviso("Per cercare di creare il sito.");
            CreateSiteLogicContainer.createSite();
        });
    }


}

CreateSiteLogicContainer.wireUpForm();

</script di>

Quando è successo, si ottiene un pacchetto JSON in risposta come questo:

image

I miei pensieri chiavi e apprendimenti da questo includono:

  • Questo approccio utilizza jQuery.  Nel mio caso, mia libreria jQuery si trova in ".../ plugin. "  Ti consigliamo di cambiare che per puntare alla tua posizione preferita di JQ.
  • È possibile copiare e incollare quel frammento intero in una Web Editor contenuto Part in una pagina e dovrebbe funzionare bene.  Ti consigliamo di cambiare il punto di fine della chiamata API e assicurarsi che si fa riferimento JQ correttamente.
  • L'URL è relativo dell'endpoint di API.  Nel mio caso, è la creazione di siti secondari sotto https://bigapplesharepoint.com
  • Non è necessario fornire una contenuto-lunghezza. Alcuni blog e MSDN documento implica che si fa, ma è successo per me automaticamente, che presumo viene gestita dalla chiamata del AJAX $.
  • Questa linea è necessaria al fine di evitare una risposta "proibita": "X-RequestDigest": $("#__REQUESTDIGEST").Val().  Ci sono altri modi per farlo, ma questo è abbastanza piacevole.  Ho perso il link al blog che ha fornito questa scorciatoia.  H/T a voi, misteriosa blogger!

Buona fortuna e spero che questo aiuti qualcuno fuori.

</fine>

undefinedIscriviti al mio blog.

Seguimi su Twitter a http://www.twitter.com/pagalvin

Lasciare una risposta

L'indirizzo email non verrà pubblicato. i campi richiesti sono contrassegnati *