小编Yan*_*the的帖子

使用 Microsoft Graph API 获取 SharePoint Online 团队网站

我正在尝试访问组织的 SharePoint 团队网站。我正在使用 Microsoft Graph API,因为它是 Office 365 最完整的 API。我了解如何获取访问令牌以及如何使用它来发出请求。我知道它有效,因为我可以获得组列表,但是在获取所有团队网站时,我收到一条错误消息:

Code : invalidRequest    
Message : Cannot enumerate sites
Run Code Online (Sandbox Code Playgroud)

这是我的代码。我正在控制台应用程序中对其进行测试。

class Program {
    static void Main(string[] args) {
        Program p = new Program();
        var items = p.GetItems();
        items.Wait();
        foreach (var item in items.Result) {
            Console.WriteLine(item.DisplayName);
        }

        Console.ReadLine();
    }

    public async Task<IGraphServiceSitesCollectionPage> GetItems() {
        PublicClientApplication myApp =
            new PublicClientApplication("CLIENT-ID-FROM-DEVELOPPER-CONSOLE");

        //Gets an access token
        AuthenticationResult authenticationResult =
            await myApp.AcquireTokenAsync(
                new string[] {
                    "user.read.all",
                    "sites.read.all",
                    "files.read.all",
                    "group.read.all",
                    "Directory.Read.All"
                }).ConfigureAwait(false);

        //Creates the client with the …
Run Code Online (Sandbox Code Playgroud)

c# sharepoint-online microsoft-graph-api

5
推荐指数
1
解决办法
5208
查看次数