我正在尝试将我的AngularJS应用程序连接到Sharepoint 2010列表。
我已经尝试了http://test.cstoremaster.com/和this教程但是对我来说都没有用。这两个教程正在使用SharePoint 2013。
第一个问题是:“SharePoint 2010是否有RestAPI供我连接?” - 如果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];
}
那么你能告诉我这里出了什么问题吗?
谢谢和问候, 迈克尔
答案 0 :(得分:0)
SharePoint 2010有一个REST API,但它并不像2013年那样广泛。在你的情况下,' getByTitle'不属于2010 API。
在2010 API中,要获取列表数据,您的网址可能类似于:
http://yourserver/yoursite/_vti_bin/ListData.svc/Steckbrief_Data
其中Steckbrief_Data
是您想要的数据的列表,http://yourserver/yoursite/
是列表所在网站的路径。
如果这不起作用,请在浏览器中首先尝试http://yoursever/yoursite/_vti_bin/ListData.svc/
。获取列表的内部名称,然后尝试代替Steckbrief_Data
阅读更多详细信息here