要使用多个作用域,必须使用空格分隔它们。以下是示例代码:
string[] scopes = new string[] { "user.read", "calendars.read" };
string accessToken = await HttpContext.GetTokenAsync("access_token");
var graphClient = new GraphServiceClient(new DelegateAuthenticationProvider(async(requestMessage) => {
requestMessage.Headers.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);
requestMessage.Headers.TryAddWithoutValidation("Content-Type", "application/json;odata=verbose");
}));
var results = await graphClient.Me.Calendar.Events.Request(scopes).Select("subject,start,end").GetAsync();