从另一个网站连接到 Sharepoint

Get connected to Sharepoint from another website

我有一个包含四个不同列(姓名、职位、办公室、薪水)的 SharePoint 列表。 在我的项目中,我必须连接到 SharePoint 网站 (使用特定的用户名和密码登录),检索列表中的所有项目并将它们显示在我自己的网站中。我在互联网上阅读了很多帖子,但没有任何用处。如果你能帮助我,我将不胜感激。

此示例 REST API getlistitem:

var requestUri = "http://sp/sites/test" + "/_api/web/lists/getByTitle('SharePointList')/items?$select=Name,Position,Office,Slary";
var requestHeaders = {
    "accept": "application/json;odata=verbose"
}
$.ajax({
    url: requestUri,
    type: 'GET',
    dataType: 'json',
    headers: requestHeaders,
    success: function (data) 
    {        
       $.each(data.d.results, function(i,result) {
        //Name
        var name = result.Name;
        alert(name);

    });
    },
    error: function ajaxError(response) {
        alert(response.status + ' ' + response.statusText);
    }

我认为您的两个网站都来自同一个域。下面是使用 REST API:

从 Sharepoint 列表中读取项目的示例代码
function retriveListItem()                                                
{
var resultGridHtmlMySubmission=''
  $.ajax (
          {
url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/lists/GetByTitle('<SampleListName(yourlistTitle)>')/items?$select=Title,Name,Position,Office,Salary",
type: "GET",
data: JSON.stringify,
headers:
{
"Accept": "application/json;odata=verbose",
"Content-Type": "application/json;odata=verbose",
"X-RequestDigest": $("#__REQUESTDIGEST").val(),
"IF-MATCH": "*",
"X-HTTP-Method": null
},
cache: false,
success: function(data)  
{ 
for (vari = 0; i<data.d.results.length; i++)
{
var item = data.d.results[i];
resultGridHtmlMySubmission+='<tr>';
resultGridHtmlMySubmission+='<tdalign="center"   valign="middle"><span title="Sr.No."><b>'+item.Title+'</b></span></td>';
resultGridHtmlMySubmission+='<td align="center" valign="middle"><span title="Sr.No."><b>'+item.Name+'</b></span></td>';
resultGridHtmlMySubmission+='<td align="center" valign="middle"><span title="Sr.No."><b>'+item.Position+'</b></span></td>';
resultGridHtmlMySubmission+='<td align="center" valign="middle"><span title="Sr.No."><b>'+item.Office+'</b></span></td>';
resultGridHtmlMySubmission+='<td align="center" valign="middle"><span title="Sr.No."><b>'+item.Salary+'</b></span></td>';
resultGridHtmlMySubmission+='</tr>';

  }
$("#tbodycontent").html(resultGridHtmlMySubmission);
},
error: function(data)
{
// $("#ResultDiv").empty().text(data.responseJSON.error);
}
});
}

已讨论过类似话题

如果我们想从外部系统连接 SharePoint 在线网站 - 我们创建了 client_idclient_secret 而不是用户名和密码。

如何创建它 - 请关注 话题。

除了@Fox 的回答,对于远程网站(在您的 SharePoint 租户之外),您可能需要获取访问令牌并在 SharePoint Rest 'Authorization' headers API 来电。查看以下 link 了解详细信息:

https://medium.com/@anoopt/accessing-sharepoint-data-using-postman-sharepoint-rest-api-76b70630bcbf

这是使用 POSTMAN 进行 API 调用。