SharePoint 2013数据访问示例

在本文中,将探讨如何通过SharePoint 2013的跨域库从应用程序访问SharePoint网站的数据。这是一个实用的项目示例,包括详细的步骤说明,旨在帮助开发者理解并实现数据访问。

本文基于MSDN上的信息,提供了一个完整的项目示例。示例使用Visual Studio 2015和SharePoint 365站点,站点中包含一个名为Movies的列表。需要注意的是,该站点启用了侧载(sideloading)。

项目设置

要开始构建自己的项目,需要按照以下步骤进行初始设置:

步骤 1:在Visual Studio的新项目窗口中,选择“App for SharePoint”。例如,可以将项目命名为spRestExample。

步骤 2:输入SharePoint站点地址,并选择“SharePoint-Hosted”作为应用程序的托管方式。

步骤 3:指定目标SharePoint版本。完成后,将得到一组类似于以下结构的解决方案文件(在VS 2015中)。

步骤 4:双击AppManifest.xml文件,并设置SharePoint权限。

添加代码

双击App.js文件,并替换其中的所有内容,使用以下代码:

'use strict'; $(document).ready(function () { var hostweburl; var appweburl; // SharePoint站点,应用程序安装的位置 hostweburl = decodeURIComponent(getQueryStringParameter('SPHostUrl')); // 应用程序部署在站点内的位置 appweburl = decodeURIComponent(getQueryStringParameter('SPAppWebUrl')); // 资源位于URL中,格式为:web_url/_layouts/15/resource var scriptbase = hostweburl + "/_layouts/15/"; $.getScript(scriptbase + "SP.RequestExecutor.js", execCrossDomainRequest); // 使用跨域库与多个域进行交互 function execCrossDomainRequest() { var executor = new SP.RequestExecutor(appweburl); } $("#showButton").click(function () { var executor = new SP.RequestExecutor(appweburl); executor.executeAsync({ url: appweburl + "/_api/SP.AppContextSite(@target)/web/lists/getbytitle('Movies')/Items?@target='" + hostweburl + "'", method: "GET", headers: { "Accept": "application/json; odata=verbose" }, success: successHandler, error: errorHandler }); }); function successHandler(data) { var jsonObject = JSON.parse(data.body); var moviesHTML = ""; var results = jsonObject.d.results; for (var i = 0; i < results.length; i++) { moviesHTML = moviesHTML + ""; } document.getElementById("resultsDiv").innerHTML = moviesHTML; } function errorHandler(error) { $("#resultsDiv").append(error.statusText); } // 通过特定键获取参数值的函数 function getQueryStringParameter(urlParameterKey) { var params = document.URL.split('?')[1].split('&'); var strParams = ''; for (var i = 0; i < params.length; i = i + 1) { var singleParam = params[i].split('='); if (singleParam[0] == urlParameterKey) return decodeURIComponent(singleParam[1]); } } });

在Default.aspx文件中,在<asp:Content>标签之间添加以下代码:

<div> <input id="showButton" type="button" value="Show Movies2"/> </div> <div id="resultsDiv"> </div>

现在已经准备好运行项目了。第一次运行时,系统会提示信任新应用程序。选择列表名称(本例中为Movies),然后点击“Trust It”。将看到页面上出现了新的“Show Movies”按钮。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485