SharePoint 2013 App 開發—SharePoint Hosted方式,


  這篇文章會依據簡單的Demo,介紹一下SharePoint Hosted 方式開發App 的步驟和說明。

  這種方式的環境相比較Office 365 要麻煩一些,如果不可以連接到Internet 或者還想進行SharePoint 的其他的用途的話,有必要在本地安裝一個這樣的環境。

  前面說了,這種方式開發的話,需要安裝SharePoint 2013,至於怎么安裝,網上這方面的教程很多,這里不贅述了。

  接下來,是做一些准備工作,安裝Visual Studio 2012,安裝Microsoft Office Developer Tools forVisual Studio。現在Visual Studio 2013 出來了,對於SharePoint 2013 的開發很方便, 我這里用Visual Studio 2013 體驗了一把。

  如果沒有安裝Office Developer Tools的話,VS 2012 中找不到SharePoint App 項目模板的,可以通過以下地址下載安裝。

  http://www.microsoft.com/web/handlers/WebPI.ashx?command=GetInstallerRedirect&appid=OfficeToolsForVS2012GA

一、創建和部署 Sharepoint 承載的應用程序

  首先,確定承載的應用程序的獨立域名。

  我們可以使用類似這樣的域名apps.contoso.com ,鑒於眾多的域名,可以在DNS 管理器中,添加一個泛域名解析*.contoso.com,指向SharePoint IP地址。這樣所有以contoso.com結尾的域名都指向這個IP 地址。

  其次,配置創建獨立的App托管應用程序域。

  1. 確保 spadmin 和 sptimer 服務正在運行。  
  2.作為管理員運行 SharePoint Management Shell 並鍵入以下命令以創建獨立的應用程序域。
  3.通過在 SharePoint Management Shell 中鍵入以下命令來確保 SPSubscriptionSettingsService 和 AppManagementServiceInstance 服務正在運行。
  4.通過在 SharePoint Management Shell 中鍵入以下命令來驗證 SPSubscriptionSettingsService 和 AppManagementServiceInstance 服務是否正在運行。輸出將指明每項服務是否處於聯機狀態。
  5.您必須指定運行 SPSubscriptionService 和 AppManagementServiceInstance 服務實例將使用的帳戶。此帳戶必須是 SPManagedAccount。通過在 SharePoint Management Shell 中鍵入以下命令,您可以創建 SPManagedAccount(將會提示您輸入帳戶域\用戶和密碼)。
  6.通過在 SharePoint Management Shell 中鍵入以下代碼,為 SPSubscriptionService 和 AppManagementServiceInstance 服務指定帳戶、應用程序池和數據庫設置。如果在上一步驟中創建了 SPManagedAccount,請在此處使用該帳戶名稱。
  7.通過在 SharePoint Management Shell 中鍵入以下代碼來指定租戶名稱。

   以域名apps.contoso.com 為例,執行以下Powershell 的腳本。 

  

//確保 spadmin 和 sptimer 服務正在運行
net start spadminv4
net start sptimerv4

// 設置應用程序域為“apps.contoso.com”
$appHostDomain = "apps.contoso.com" 
Set-SPAppDomain $appHostDomain

// 啟動“應用程序管理服務”和“Microsoft SharePoint Foudation Subscription Settings Service”服務 
$appMgmtSvcInstance = Get-SPServiceInstance | Where-Object { $_.GetType().Name -eq "AppManagementServiceInstance" } 
if ($appMgmtSvcInstance.Status -ne "Online") { Start-SPServiceInstance -Identity $appMgmtSvcInstance } 
$appSubSettingSvcInstance = Get-SPServiceInstance | Where-Object { $_.GetType().Name -eq "SPSubscriptionSettingsServiceInstance"} 
if ($appSubSettingSvcInstance.Status -ne "Online") { Start-SPServiceInstance -Identity $appSubSettingSvcInstance }

// 創建“Settings Service Application”和“應用程序管理服務”服務應用程序 
$appPoolServiceApps = Get-SPServiceApplicationPool -Identity "SharePoint Web Services Default" 
$appSubSvc = New-SPSubscriptionSettingsServiceApplication -ApplicationPool $appPoolServiceApps -Name "Settings Service Application" -DatabaseName SettingsServiceDB 
$proxySubSvc = New-SPSubscriptionSettingsServiceApplicationProxy -ServiceApplication $appSubSvc 
$appAppSvc = New-SPAppManagementServiceApplication -ApplicationPool $appPoolServiceApps -Name "應用程序管理服務" -DatabaseName AppServiceDB 
$proxyAppSvc = New-SPAppManagementServiceApplicationProxy -ServiceApplication $appAppSvc

// 設置應用程序前綴 
Set-SPAppSiteSubscriptionName -Name "app" -Confirm:$false
View Code

二、 使用Visual Studio 進行App 開發  

  這些准備完之后,就可以開發了,按步就搬的介紹下:

  1、創建SharePoint App項目 

  啟動Visual Studio 2013 ,創建項目,選擇SharePoint-hosted app 模板,

  

  填好項目名稱后,宿主方式選擇 “SharePoint-hosted”,網站地址填寫SharePoint 2013 的網站地址,然后點擊完成,即可創建

  

  

  2、修改AppManifest.xml,在窗口上選擇權限選項卡,勾選“允許應用程序對SharePoint調用”,范圍選擇“Web”,權限選擇“Read”,然后保存。

   

  3、修改default.aspx 頁面,在<PlaceHolderMain>標簽內插入一個按鈕的Html 代碼  

<div>
   <button id="btnCount">Get count of lists in web</button>
</div>
<div id="divMsg">
</div>
View Code

  4、修改App.js,修改代碼如下

  

三、發布和部署App

  1、在發布之前需要先到管理中心新建app catalog。

  進入管理中心—〉APPs—〉管理應用程序目錄(Manage App Catalog)—〉創建App網站集  

  2、部署App項目

  右擊項目名稱,選擇部署,或者F5進行部署和運行。在跳出的對話框選擇“信任它”以對App進行授權訪問。

  3、添加App到網站

  登陸SharePoint 2013網站,選擇設置菜單里“添加應用”,點擊app進行安裝。

  4、查看並效果演示

  點擊Site contents,點擊剛剛安裝的app,查看App 首頁演示效果。

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM