站点中的JavaScript可以访问SharePoint列表吗?

时间:2016-08-16 19:10:31

标签: javascript sharepoint

如果我有一个完全独立于Microsoft(Wordpress网站)的网站,我是否可以使用外部网站上的JS从SharePoint网站上的列表中访问数据?例如,我可以在SharePoint站点中使用以下代码访问列表:

function retrieveChemicalsListItems() {
var clientContext = new SP.ClientContext('/sites/________/');
var oList = clientContext.get_web().get_lists().getByTitle('ChemicalsTable');

var camlQuery = new SP.CamlQuery();
//<Where><Geq><FieldRef Name=\'ID\'/>' + '<Value Type=\'Number\'>1</Value></Geq></Where> <RowLimit>10</RowLimit>
camlQuery.set_viewXml('<View><Query></Query></View>');
this.collListItem = oList.getItems(camlQuery);

clientContext.load(collListItem);
clientContext.executeQueryAsync(Function.createDelegate(this, this.onChemicalsQuerySucceeded), Function.createDelegate(this, this.onQueryFailed));        

}

如果我只是使用相同的URL和所有内容,并将其放在任何其他网站上,它的工作方式是否相同?

1 个答案:

答案 0 :(得分:1)

您是在线还是在本地使用Sharepoint?如果您在线使用,请转到link with tutorial for SP Online。但是通过js代码传递登录名和密码并不是一个好主意,因为每个人都会看到它。这是一个安全威胁。

或者看看onprem:link 1link2。此外,使用CSOM可以帮助开发应用程序:

using (ClientContext context = new ClientContext("sp_site_url")) {
    context.Credentials = new NetworkCredential("user", "password", "domain");
    List list = context.Web.Lists.GetByTitle("MyList");
    context.Load(list);
    context.ExecuteQuery();
    // process list
}

另一种方法是开发您自己的Web服务,该服务可以访问Sharepoint网站,您可以使用自定义身份验证来调用它。

相关问题