将 AngularJS 连接到 SharePoint 2010 列表
Connect AngularJS to SharePoint 2010 List
我正在尝试将我的 AngularJS 应用连接到 Sharepoint 2010 列表。
我试过 this and this 教程,但都不适合我。这 2 个教程使用的是 SharePoint 2013。
那么第一个问题是:"Does SharePoint 2010 have a RestAPI for me to connect with?" - 如果 SP 2010 有此功能,为什么我无法连接到列表?
我的列表名为 "Steckbrief_Data",我尝试 运行 的代码是:
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope, $http) {
$http(
{
method: "GET",
url: GetSiteUrl() + "_api/web/lists/getByTitle('Steckbrief_Data')/items"
headers: {"Accept": "application/json;odata=verbose" }
}).success(function (data, status, headers, config) {
alert("success");
$scope.Employees = data.d.results;
}).error(function (data, status, headers, config) {
alert("error");
});
});
function GetSiteUrl() {
var urlParts = document.location.href.split("/");
return urlParts[0] + "//" + urlParts[2] + "/" + urlParts[3] + "/" + urlParts[4];
}
那么你能告诉我这里出了什么问题吗?
谢谢和问候,
迈克尔
SharePoint 2010 有一个 REST API,但它没有 2013 的那么广泛。在您的情况下,'getByTitle' 不属于 2010 API。
在 2010 API 中,要获取列表数据,您的 URL 可能类似于:
http://yourserver/yoursite/_vti_bin/ListData.svc/Steckbrief_Data
其中 Steckbrief_Data
是您需要其数据的列表,http://yourserver/yoursite/
是列表所在站点的路径。
如果这不能马上奏效,请在浏览器中先尝试 http://yoursever/yoursite/_vti_bin/ListData.svc/
。获取列表的内部名称并尝试用它代替 Steckbrief_Data
阅读更多详细信息here
我正在尝试将我的 AngularJS 应用连接到 Sharepoint 2010 列表。
我试过 this and this 教程,但都不适合我。这 2 个教程使用的是 SharePoint 2013。
那么第一个问题是:"Does SharePoint 2010 have a RestAPI for me to connect with?" - 如果 SP 2010 有此功能,为什么我无法连接到列表?
我的列表名为 "Steckbrief_Data",我尝试 运行 的代码是:
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope, $http) {
$http(
{
method: "GET",
url: GetSiteUrl() + "_api/web/lists/getByTitle('Steckbrief_Data')/items"
headers: {"Accept": "application/json;odata=verbose" }
}).success(function (data, status, headers, config) {
alert("success");
$scope.Employees = data.d.results;
}).error(function (data, status, headers, config) {
alert("error");
});
});
function GetSiteUrl() {
var urlParts = document.location.href.split("/");
return urlParts[0] + "//" + urlParts[2] + "/" + urlParts[3] + "/" + urlParts[4];
}
那么你能告诉我这里出了什么问题吗?
谢谢和问候, 迈克尔
SharePoint 2010 有一个 REST API,但它没有 2013 的那么广泛。在您的情况下,'getByTitle' 不属于 2010 API。
在 2010 API 中,要获取列表数据,您的 URL 可能类似于:
http://yourserver/yoursite/_vti_bin/ListData.svc/Steckbrief_Data
其中 Steckbrief_Data
是您需要其数据的列表,http://yourserver/yoursite/
是列表所在站点的路径。
如果这不能马上奏效,请在浏览器中先尝试 http://yoursever/yoursite/_vti_bin/ListData.svc/
。获取列表的内部名称并尝试用它代替 Steckbrief_Data
阅读更多详细信息here