Pantas dan Mudah: Cipta Laman REST SharePoint Menggunakan

Terdapat banyak sumber sekitar menunjukkan bahawa cara untuk melakukan ini, tetapi saya tidak dapat mencari pautan go ke komprehensif, Jadi di sini kita akan.

Anda boleh mencipta tapak SharePoint menggunakan API lain.  Berikut adalah satu contoh yang dimasak sepenuhnya:

<!--
    SiteRequestForm.html: Mengumpul maklumat dan mencipta Laman web untuk pengguna.
-->

<pusat>
<jadual>
    <tr>
        <td>Nama tapak:</td>
        <td><input Jenis= "teks" Nama= "SiteName" id= "SiteName" /></td>
    </tr>
    <tr>
        <td colspan= "2">
            <input Jenis= "serah" id= "CreateSiteButton" nilai= "Mewujudkan laman web ini" />
        </td>
    </tr>
</jadual>
</pusat>

<skrip JPP=".. /Plugins/jQuery-1.11.0.min.js"></skrip>

<skrip>
VAR CreateSiteLogicContainer = {

    createSiteData: {
            "parameter": {
                __metadata: { "jenis": "SP. WebInfoCreationInformation" },
                URL: "Paultest1",
                Title: "Paultest1",
                Penerangan: "rehat-dicipta web oleh Paul!",
                Bahasa: 1033,
                WebTemplate: "sts",
                UseUniquePermissions: palsu
            }
    },

    createSite: fungsi () {

        jQuery.support.cors = benar;

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

            header: {
                "Menerima": "permohonan/json; odata = banyak cakap",
                "content-type": "permohonan/json;odata = banyak cakap",
                "X-RequestDigest": $("#__REQUESTDIGEST").val()
            },

            data: JSON.stringify(CreateSiteLogicContainer.createSiteData),

            kejayaan: fungsi () { berjaga-jaga("kejayaan"); },
            kesilapan: fungsi () { berjaga-jaga("Ralat"); }

        });
    },

    wireUpForm: fungsi () {
        $("#CreateSiteButton").klik(fungsi () {
            berjaga-jaga("Kira-kira untuk mencuba dan mewujudkan laman web ini.");
            CreateSiteLogicContainer.createSite();
        });
    }


}

CreateSiteLogicContainer.wireUpForm();

</skrip>

Apabila berjaya, anda akan mendapat satu paket JSON dalam jawapan seperti ini:

image

Utama pemikiran dan learnings daripada ini termasuk saya:

  • Pendekatan ini menggunakan jQuery.  Dalam kes saya,, Pustaka jQuery terletak di "... / plugin. "  Anda akan mahu ubah hakikat itu untuk menghala ke lokasi JQ kegemaran anda.
  • Anda boleh menyalin dan menampal cebisan itu turun ke bahagian Web Editor kandungan di halaman dan ia harus bekerja saja.  Anda akan mahu untuk mengubah titik tamat panggilan API dan pastikan anda rujukan JQ dengan betul.
  • URL adalah berbanding dengan titik tamat API anda.  Dalam kes saya,, Ia mewujudkan sub tapak di bawahnya https://bigapplesharepoint.com
  • Anda tidak perlu menyediakan kandungan-panjang. Beberapa posting blog dan MSDN dokumen membayangkan yang anda lakukan, tetapi berlaku untuk saya secara automatik, yang saya anggap sebagai dikendalikan oleh panggilan .ajax $ sendiri.
  • Talian ini diperlukan untuk mengelakkan jawapan "haram": "X-RequestDigest": $("#__REQUESTDIGEST").val().  Terdapat pelbagai cara untuk melakukannya, tetapi ini adalah cukup bagus.  Saya telah kehilangan link ke blog yang diberikan pintasan ini.  H/T kepada anda, blogger misteri!

Nasib baik dan harap ini membantu seseorang.

</akhir>

undefinedLanggan ke blog saya.

Mengikuti aku di Twitter http://www.twitter.com/pagalvin

Tinggalkan Jawapan

alamat e-mel anda tidak akan diterbitkan. Ruangan yang diperlukan ditanda *