Fácil y rápida: Crear un sitio de SharePoint usando resto

Hay un montón de recursos mostrar cómo hacerlo, Pero no pude encontrar un enlace acudir integral, Así que aquí estamos.

Puede crear un sitio de SharePoint usando la API de REST.  Aquí hay un ejemplo totalmente al horno:

<!--
    SiteRequestForm.html: Recopilar información y crear un sitio para el usuario.
-->

<Centro>
<mesa>
    <TR>
        <TD>Nombre del sitio:</TD>
        <TD><entrada tipo= "text" nombre"SiteName =" ID."SiteName =" /></TD>
    </TR>
    <TR>
        <TD colspan= "2">
            <entrada tipo= "enviar" ID.= CreateSiteButton"" valor= "Crear el sitio" />
        </TD>
    </TR>
</mesa>
</Centro>

<secuencia de comandos src="../Plugins/jQuery-1.11.0.min.js"></secuencia de comandos>

<secuencia de comandos>
var CreateSiteLogicContainer = {

    createSiteData: {
            "los parámetros": {
                __metadata: { "tipo": "SP.WebInfoCreationInformation" },
                URL: "Paultest1",
                Título: "Paultest1",
                Descripción: "resto-creado web por Pablo!",
                Idioma: 1033,
                WebTemplate: "sts",
                UseUniquePermissions: falso
            }
    },

    createSite: función () {

        jQuery.support.cors = verdadero;

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

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

            datos: JSON.stringify(CreateSiteLogicContainer.createSiteData),

            éxito: función () { alerta("el éxito"); },
            error: función () { alerta("error"); }

        });
    },

    wireUpForm: función () {
        $("#CreateSiteButton").Haga clic en(función () {
            alerta("A punto de probar y crear el sitio.");
            CreateSiteLogicContainer.createSite();
        });
    }


}

CreateSiteLogicContainer.wireUpForm();

</secuencia de comandos>

Cuando exitoso, obtienes un paquete JSON en respuesta así:

image

Mis pensamientos claves y aprendizajes de esta inclusión:

  • Este enfoque utiliza jQuery.  En mi caso, mi biblioteca jQuery se encuentra en ".../ plugins. "  Usted querrá cambiar eso para señalar su lugar favorito de JQ.
  • Puede copiar y pegar ese fragmento entero en un elemento Web Editor de contenido en una página y debería funcionar bien.  Usted querrá cambiar el punto final de la llamada de API y asegúrese de que usted referencia JQ correctamente.
  • La URL es relativa a punto final de su API.  En mi caso, es crear subsitios debajo https://bigapplesharepoint.com
  • No es necesario proporcionar una longitud del contenido. Algunas entradas en el blog y MSDN documento implica que hacer, Pero pasó por mí automáticamente, que supongo que está siendo manejado por la llamada .ajax $ sí mismo.
  • Esta línea es necesaria para evitar una respuesta "prohibida": "X-RequestDigest": $("#__REQUESTDIGEST").Val().  Hay otras maneras de hacerlo, Pero esto es muy bonito.  He perdido el enlace al blog que proporcionan este acceso directo.  H/T te, misterioso blogger!

Buena suerte y espero que esto ayude a alguien.

</final>

undefinedSuscribirse a mi blog.

Sígueme en Twitter en http://www.twitter.com/pagalvin

Contesta

su dirección de correo electrónico no será publicada. Los campos necesarios están marcados *