0

我有一个共享点插件需要创建 xamarin 应用程序。所以需要访问所有的share-point online 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");
        }

可以直接访问share-point online rest API吗?

4

1 回答 1

0

您无法从移动设备直接访问 Sharepoint rest api。

这是我的发现:-

A - 您需要创建自己的 Web 服务,该服务将通过 Sharepoint 在线 Web API 进行身份验证并部署它,然后您必须使用您的移动应用程序连接到新创建的 Web 服务以获取和更新数据。您可以从此链接找到正确的描述

https://www.codemag.com/Article/1411031/Mobile-Apps-for-SharePoint-and-Office-365-Part-1

B - 另一种方法是您可以添加一个新应用程序,创建一个新应用程序并使用您自己的自定义逻辑注册到 Azure AD,以便与 Sharepoint 在线休息 api 进行交互,您可以从此链接找到正确的描述

https://docs.microsoft.com/en-gb/azure/active-directory/develop/app-types

让我知道,如果它有帮助

于 2019-06-24T09:26:07.047 回答