控制台应用程序中的Microsoft Graph .NET Client Library和InvalidAuthenticationToken

时间:2017-01-19 14:53:59

标签: c# onedrive microsoft-graph

我正在编写Microsoft Graph .NET Client Library 编码并在控制台应用程序中工作。我试图证明一种从个人OneDrive帐户获取松散文档列表的方法。我的代码抛出了一些问题:

  

InvalidAuthenticationToken:CompactToken解析失败,错误代码为-2147184118。

在做了一些研究后,看起来这个错误是由于将OAuth令牌作为OAuth令牌而不是熊发送。 SO article

由于我在控制台应用程序中工作,因此我一直难以找到有关如何正确访问Microsoft GraphOneDrive SDK的任何文档或教程。

有没有办法解决这个问题?

非工作代码:

[STAThread]
static void Main(string[] args)
{
    var graphserviceClient = new GraphServiceClient(new DelegateAuthenticationProvider(
        (requestMessage) =>
        {
            requestMessage.Headers.Authorization = 
                new AuthenticationHeaderValue("bearer", AccessToken);

            return Task.FromResult(0);

        }));

    Task.Run(async () =>
    {
        try
        {
            var drive = await graphserviceClient.Me.Drive.Root.Request().GetAsync();
        }
        catch (Exception e)
        {
            Console.WriteLine(e);
            throw;
        }

    }).GetAwaiter().GetResult();

}

我还添加了一个堆栈跟踪图像:

enter image description here

另外,我已经包含了网络流量的Fiddle屏幕截图:

enter image description here

0 个答案:

没有答案