Hızlı ve kolay: DİNLENME kullanarak bir SharePoint sitesi oluşturma

Bunu nasıl kaynaklarını gösteren etrafında vardır., Ama kapsamlı gitmek için bir link bulamadım., İşte.

REST API kullanarak bir SharePoint sitesi oluşturabilir.  Tamamen pişmiş bir örnek:

<!--
    SiteRequestForm.html: Bilgi toplama ve kullanıcı için bir site oluşturun.
-->

<Merkezi>
<Tablo>
    <tr>
        <TD>Site adı:</TD>
        <TD><giriş türü= "metin" adı"SiteAdı =" kimliği"SiteAdı =" /></TD>
    </tr>
    <tr>
        <TD colspan"2 =">
            <giriş türü"submit =" kimliği"CreateSiteButton =" değer= "Site Oluştur" />
        </TD>
    </tr>
</Tablo>
</Merkezi>

<komut dosyası src="../Plugins/jQuery-1.11.0.min.js"></komut dosyası>

<komut dosyası>
var CreateSiteLogicContainer = {

    createSiteData: {
            "parametreleri": {
                __metadata: { "türü": "SPWebInfoCreationInformation" },
                URL: "Paultest1",
                Başlık: "Paultest1",
                Açıklama: Paul tarafından web diğerleri tarafından oluşturulan"!",
                Dil: 1033,
                LCID'sine: "sts",
                UseUniquePermissions: yanlış
            }
    },

    createSite: işlevi () {

        jQuery.support.cors = TRUE;

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

            başlıkları: {
                "Kabul et": "uygulama/json; Odata = verbose",
                "content-type": "uygulama/json;Odata = verbose",
                "X-RequestDigest": $("#__REQUESTDIGEST").Val()
            },

            veri: JSON.stringify(CreateSiteLogicContainer.createSiteData),

            başarı: işlevi () { Uyarı("başarı"); },
            hata: işlevi () { Uyarı("hatası"); }

        });
    },

    wireUpForm: işlevi () {
        $("#CreateSiteButton").' ı tıklatın(işlevi () {
            Uyarı("Yaklaşık denemek ve siteyi oluşturmak için.");
            CreateSiteLogicContainer.createSite();
        });
    }


}

CreateSiteLogicContainer.wireUpForm();

</komut dosyası>

Başarılı olduğunda, Bu yanıt bir JSON paket al:

image

Temel düşünce ve bu olası üzerinden Öğrenmeler:

  • Bu yaklaşım, jQuery kullanır.  Benim durumumda, benim jQuery kütüphanesi bulunur ".../ plugins. "  Bu senin en sevdiğin JQ konumu belirtmek için değiştirmek istediğiniz.
  • Kopyalayabilir ve içerik Düzenleyicisi Web Bölümü sayfasındaki tüm bu pasajı yapıştırın ve sadece iyi çalışması gerekir.  Youll'istemek-e doğru JQ başvuru emin olun ve API çağrısı bitiş noktası değiştirmek için.
  • URL'nin göreli olarak API'ın bitiş noktasıdır.  Benim durumumda, altında alt siteler oluşturma https://bigapplesharepoint.com
  • Bir içerik-uzunluk sağlamak gerek yok. Bazı blog yazıları ve MSDN belgesi anlamına gelir senin böyle, Ama benim için otomatik olarak oldu., varsayıyorum $.ajax çağrısı tarafından ele alınır.
  • Bu satır için bir "yasak" yanıtı önlemek için gerekli: "X-RequestDigest": $("#__REQUESTDIGEST").Val().  Bunu yapmak için başka yolları da vardır, Ama bu çok hoş.  Blog için bu kısayolu sağlanan bağlantıyı kaybettim.  H/T size, gizemli blogger!

İyi şanslar ve kimse bu yardımcı olur.

</sonunda>

undefinedBenim blog abone.

Heyecan beni izleyin http://www.twitter.com/pagalvin

Cevap bırak

E-posta hesabınız yayımlanmayacak. Gerekli alanlar işaretlendi *