ישנם הרבה אפשרויות מסביב המציגים כיצד לעשות זאת, אבל לא מצאתי קישור אליו מקיף, אז הנה אנחנו.
באפשרותך ליצור אתר SharePoint באמצעות ה-API של מנוחה. הנה דוגמא אפוי לגמרי:
<!-- SiteRequestForm.html: לאסוף מידע וליצור אתר עבור המשתמש. --> <מרכז> <טבלה> <. tr> <td>שם האתר:</td> <td><קלט סוג= "טקסט" שם= "SiteName" מזהה= "SiteName" /></td> </. tr> <. tr> <td colspan= "2"> <קלט סוג= "להגיש" מזהה= "CreateSiteButton" ערך= "יצירת האתר" /> </td> </. tr> </טבלה> </מרכז> <קובץ script src="../Plugins/jquery-1.11.0.min.js"></קובץ script> <קובץ script> var CreateSiteLogicContainer = { createSiteData: { "פרמטרים": { __metadata: { "סוג": ". SP.WebInfoCreationInformation" }, כתובת Url: "Paultest1", כותרת: "Paultest1", תיאור: "שנוצרו על-ידי מנוחה אינטרנט על-ידי פול!", שפה: 1033, WebTemplate: "sts", UseUniquePermissions: שווא } }, createSite: פונקציה () { jQuery.support.cors = נכון; CreateSiteLogicContainer.createSiteData.parameters.Url = $("#SiteName").ול(); $.אייאקס({ כתובת url: "https://bigapplesharepoint.sharepoint.com/NBAIADev/_api/web/webinfos/add", שיטה: "פוסט", כותרות: { "מקבל": "יישום/json; odata = מפורט", "סוג תוכן": "יישום/json;odata = מפורט", "X-RequestDigest": $("#__REQUESTDIGEST").ול() }, נתונים: JSON.stringify(CreateSiteLogicContainer.createSiteData), הצלחה: פונקציה () { התראה("הצלחה"); }, שגיאה: פונקציה () { התראה("שגיאה"); } }); }, wireUpForm: פונקציה () { $("#CreateSiteButton").לחץ(פונקציה () { התראה("עומד לנסות וליצור את האתר."); CreateSiteLogicContainer.createSite(); }); } } CreateSiteLogicContainer.wireUpForm(); </קובץ script>
כאשר הוא מוצלח, אתה מקבל מנה JSON בתגובה ככה:
שלמדנו מן הזה כלול ומחשבות המפתח שלי:
- גישה זו משתמש jQuery. במקרה שלי, הספרייה jQuery שלי ממוקם "./ תוספים. " אתה רוצה לשנות את זה כדי להצביע על מיקום JQ האהוב שלך.
- באפשרותך להעתיק ולהדביק את אותו מקטע שלם אל Web Part של עורך התוכן בדף, זה אמור לעבוד טוב. אתה רוצה לשנות את נקודת הקצה של השיחה API, ודא שאתה מציין JQ כראוי.
- כתובת ה-URL הוא יחסי נקודת הקצה של ה-API שלך. במקרה שלי, יוצר אתרי המשנה מתחת https://bigapplesharepoint.com
- אתה לא צריך לספק תוכן-אורך. כמה פוסטים ו MSDN המסמך מרמז שאתה עושה, אבל קרה לי באופן אוטומטי, ואני משער מטופל בידי השיחה .ajax $ עצמה.
- שורה זו נדרשת כדי למנוע תגובה "אסורים": "X-RequestDigest": $("#__REQUESTDIGEST").ול(). יש דרכים אחרות לעשות את זה, . אבל זה די נחמד... איבדתי את הקישור לבלוג סיפק קיצור דרך זה. H/T לך, בלוגר מסתורי!
מזל טוב, מקווה שזה יעזור למישהו.
</קצה>
עקוב אחרי הטוויטר ב http://www.twitter.com/pagalvin