SharePoint 2013 開發——發佈SharePoint應用程序

 博客地址:http://blog.csdn.net/FoxDave

前幾篇咱們介紹了開發、部署和調試SharePoint應用程序的基礎,本篇介紹更實用的操做,當咱們開發一個SharePoint應用程序以後,如何發佈它呢?windows

咱們有兩個途徑發佈咱們的APP:發佈到公共的Office商店,SharePoint能夠經過在線查找商店中的應用進行安裝;發佈到內部組織的應用程序目錄,這樣SharePoint組織內的用戶能夠安裝該APP。app

發佈到Office商店框架

發佈到Office商店須要先進行註冊賣方儀表板帳戶,上傳到Office商店的應用微軟會執行一系列的檢查,確保上傳的應用程序符合內容和行爲準則,好比,它會檢查清單目錄標記是否完整有效,是否包含不容許的元素,應用的範圍等等,若是經過檢查,會打包成一個由微軟簽名的應用程序包。ide

上傳到Office商店時,能夠選擇要提供給下載它的用戶的許可證的條款:免費、試用或其餘方式,按用戶仍是網站來提供。測試

SharePoint不強制實施應用程序使用的許可條款,而是提供了一個許可框架,咱們能夠在APP中包含代碼邏輯來強制實施許可限制。好比,咱們能夠針對用戶的付費狀況來啓用或禁用APP中的某些功能。網站

發佈到應用程序目錄spa

專用應用程序目錄是SharePoint 2013Web應用程序中的一個專用網站集合,用來承載SharePoint APP的文檔庫。將目錄放在本身的站點集合中更便於Web應用程序管理員來限制該目錄的權限。.net

將SharePoint APP上傳到企業應用程序目錄就像上傳文件到文檔庫同樣。上傳到應用程序目錄的APP也會進行相似的檢查,若是不能經過檢查,APP會標記爲無效或被禁用。調試

如何肯定咱們的APP要發佈到哪裏呢?下面的表格供咱們參考:code

Office商店 應用程序目錄
應用程序公開可用 對此SharePoint部署具備訪問權限的用戶可以使用應用程序
許可框架可用 許可框架不可用
應用程序包由微軟進行技術和內容政策驗證 在上傳應用程序時由SharePoint執行應用程序包的驗證
必須向微軟賣方儀表板註冊才能上傳應用程序 不須要向微軟註冊

更多信息

本篇咱們來發布到內部的應用程序目錄上

首先在咱們咱們的測試Web應用程序上建立一個應用程序目錄網站集:管理中心->應用程序->管理應用程序目錄。

選定默認的建立新的應用程序目錄網站,點擊肯定按鈕。

如圖所示填寫信息,完成應用程序目錄網站集的建立。

下面咱們來具體看看如何發佈咱們的SharePoint APP。


SharePoint-hosted APP

此類SharePoint APP比較簡單,沒有外置的程序,咱們只須要將應用程序包拿出來上傳到SharePoint中便可,具體操做下面進行闡述。

咱們打開以前的Hello World應用程序,右鍵點擊項目節點,選擇發佈,點擊打包應用程序按鈕。

打包完成後會彈出APP包所在位置。

接下來到應用程序目錄網站,點擊左側導航適用於SharePoint的應用程序,將打包的APP文件拖到該文檔庫裏。

這樣咱們就發佈好了這個應用程序。接下來咱們瀏覽當前Web應用程序下的一個普通的網站。點擊右上角的菜單,添加應用程序,左側導航處選擇來自您的組織分組。

點擊應用程序圖標,點擊添加按鈕,選擇信任它,完成添加。


Provider-hosted APP

這種類型的APP因爲有外置的Web應用程序,在以上步驟以前,咱們須要先作一些準備工做,篇幅有限不細說了,但請仔細閱讀(修改代碼那裏貌似能夠忽略)。關於發行者ID和客戶端ID,實際的環境中通常是多個APP共用一個發行者ID,咱們這裏只是用於測試,因此就將發行者ID設置爲跟客戶端ID同樣的了。

而後咱們先發布Web應用程序。

打開以前的SharePoint APP項目,右鍵點擊Web應用程序項目節點,選擇發佈。在配置文件標籤頁,點擊下拉框的新建配置文件,取一個名稱,咱們這裏取做ProviderAPPWebConfig。(在發佈以前先到IIS裏面建立一個HTTPS類型的網站)

發佈完成以後,再操做SharePoint APP項目,右鍵項目節點,選擇發佈,點擊打包應用程序按鈕,會彈出嚮導。

點擊完成開始打包,打包成功以後一樣會看到打完包的APP文件,跟上面同樣,咱們將它傳到應用程序目錄,而後添加到要使用的網站就能夠了。

本篇完成了有幾天了,遲遲沒有發佈是由於一直遇到問題,好比An error occurred...、拒絕訪問等錯誤,嘗試了幾遍,總結出來的仍是我上面說的,必定要仔細,ClientID和IssuerID必定要都對應上,認真檢查,耐心些,問題會解決的。

最後附上調試時獲取指定APP Pool的批處理

c:\windows\system32\inetsrv\appcmd list wp
pause



相關文章
相關標籤/搜索