我需要一个共享点外接程序来创建xamarin应用程序。因此需要访问所有共享点在线Rest API。
根据Microsoft文档,我们需要在Azure AD上注册应用程序。
我不想在Azure AD中注册应用,我已经添加了共享点
我已经尝试了Microsoft提供的MSAL和ADAL库进行访问。要使用它们,我们需要在Azure AD上注册应用。
这是我编写的用于访问直接共享点剩余API的代码。
private const string GetCalendarEventsUrl = "{tenant}/_api/web/lists/getbytitle('Project')/items?$top=4900";
public List<CalendarEvent> GetCalendarEvents()
{
var username = "{tenant}.onmicrosoft.com";
var password = "{password}";
var domain = "{domain}";
var handler = new HttpClientHandler();
handler.Credentials = new System.Net.NetworkCredential(username, password, domain);
using (var client = new HttpClient(handler))
{
using (var request = new HttpRequestMessage(HttpMethod.Get, new Uri(GetCalendarEventsUrl)))
{
request.Headers.Add("Accept", "application/json;odata.metadata=minimal");
using (var response = client.SendAsync(request).Result){
if (response.IsSuccessStatusCode) {
Console.WriteLine("response");
}
}
}
}
throw new Exception("Could not get calendar events");
}
我可以直接访问共享点在线Rest API吗?
答案 0 :(得分:0)
您无法直接从移动设备访问Sharepoint rest api。
A-您需要创建自己的Web服务,该服务将通过Sharepoint联机Web API进行身份验证并进行部署,然后您必须使用移动应用程序连接到新创建的Web服务才能获取和更新数据。 您可以从此链接中找到正确的说明
B-另一种方法是,您可以添加新应用,创建新应用并使用自己的自定义逻辑注册到Azure AD,以与Sharepoint在线Rest api进行交互 您可以从此链接中找到正确的说明
https://docs.microsoft.com/en-gb/azure/active-directory/develop/app-types
如果有帮助,请告诉我