从Office 365获取资源时间表

本文关键字:资源 时间表 获取 Office | 更新日期: 2023-09-27 18:01:17

我有一个python脚本,可以通过调用从公司的Office 365日历中获取资源(房间)的时间表https://outlook.office365.com/api/v1.0/users/<roomName@companyName.com>/calendarview?startDateTime=2016-08-07 22:00:00&endDateTime=2016-08-08 22:00:00

这个好像不工作了?据我所知,通过限制资源日历的权限,API似乎发生了变化。这是一个正确的假设还是我做错了什么?

是否有一种方法可以实际获得资源的时间表?

我希望在Python或c#中做这个

从Office 365获取资源时间表

您得到的错误消息是什么?如果您得到类似The access token is acquired using an authentication method that is too weak to allow access for this application的错误,我们需要使用证书make来请求令牌,而不是使用客户端id和secret。

下面是一个使用证书请求令牌的代码示例,供您参考:

 public static async Task<string> GetTokenByCert(string clientId, string tenant, string certThumbprint,string resource)
    {
        string authority = $"https://login.windows.net/{tenant}";
        X509Certificate2 cert = CertHelper.FindCert(certThumbprint);
        var certCred = new ClientAssertionCertificate(clientId, cert);
        var authContext = new Microsoft.IdentityModel.Clients.ActiveDirectory.AuthenticationContext(authority);
        AuthenticationResult result = null;
        try
        {
            result = await authContext.AcquireTokenAsync(resource, certCred);
        }
        catch (Exception ex)
        {
        }
        return result.AccessToken;
    }

关于配置/使用证书请求令牌的更多详细信息,请参阅此处