早年如果我们要读写用户得 outlook 内容是比较麻烦的, 要用许多 smtp 之类的方式.

现在终于是有了 http 级的 API 可以 call 了.

不仅仅是 outlook, calendar 等等都可以直接用 graph api 读写哦.

照着 step 做就可以了.

https://docs.microsoft.com/en-us/graph/tutorials/aspnet-core

其实我们直接用 identity 的 external login 也是可以拿到这个权限的. 加一点 scope 下去就可以了. 当然需要把 access token 和 refresh token 收好咯

services.AddAuthentication().AddMicrosoftAccount(options =>
{
options.ClientId = "client id";
options.ClientSecret = "client secret";
options.SaveTokens = true;
options.Scope.Add("https://graph.microsoft.com/User.ReadBasic.All");
options.Scope.Add("https://graph.microsoft.com/Calendars.ReadWrite");
});

permission list 在这里

https://docs.microsoft.com/en-us/graph/permissions-reference#calendars-permissions

Asp.net core 学习笔记之 Microsoft Graph API的更多相关文章

  1. Asp.Net Core学习笔记:入门篇

    Asp.Net Core 学习 基于.Net Core 2.2版本的学习笔记. 常识 像Django那样自动检查代码更新,自动重载服务器(太方便了) dotnet watch run 托管设置 设置项 ...

  2. ASP.NET Core 学习笔记 第一篇 ASP.NET Core初探

    前言 因为工作原因博客断断续续更新,其实在很早以前就有想法做一套关于ASP.NET CORE整体学习度路线,整体来说国内的环境的.NET生态环境还是相对比较严峻的,但是干一行爱一行,还是希望更多人加入 ...

  3. Asp.net Core学习笔记

    之前记在github上的,现在搬运过来 变化还是很大的,感觉和Nodejs有点类似,比如中间件的使用 ,努力学习ing... 优点 不依赖IIS 开源和跨平台 中间件支持 性能优化 无所不在的依赖注入 ...

  4. ASP.NET Core 学习笔记 第五篇 ASP.NET Core 中的选项

    前言 还记得上一篇文章中所说的配置吗?本篇文章算是上一篇的延续吧.在 .NET Core 中读取配置文件大多数会为配置选项绑定一个POCO(Plain Old CLR Object)对象,并通过依赖注 ...

  5. asp.net.core学习笔记1:swagger的使用和webapi接收Jobject对象

    环境:asp.net.core 3.1 (一觉醒来官方已经不推荐3.0了,于是没有任何core经验,也只能开始了3.1的开发学习) 由于现有项目前后端分离.微服务化日趋流行,所以上手不采用web应用( ...

  6. Asp.net core 学习笔记 ( Data protection )

    参考 : http://www.cnblogs.com/xishuai/p/aspnet-5-identity-part-one.html http://cnblogs.com/xishuai/p/a ...

  7. Asp.net core (学习笔记 路由和语言 route & language)

    https://docs.microsoft.com/en-us/aspnet/core/mvc/controllers/routing?view=aspnetcore-2.1 https://doc ...

  8. Asp.net core 学习笔记 ( identity server 4 JWT Part )

    更新 : id4 使用这个 DbContext 哦 dotnet ef migrations add identity-server-init --context PersistedGrantDbCo ...

  9. Asp.net core 学习笔记 ( IIS, static file 性能优化 )

    更新 : 2019-02-06 最后还是把 rewrite 给替换掉了. 所以 rewrite url 也不依赖 iis 了咯. refer : https://docs.microsoft.com/ ...

  10. ASP.NET Core 学习笔记 第三篇 依赖注入框架的使用

    前言 首先感谢小可爱门的支持,写了这个系列的第二篇后,得到了好多人的鼓励,也更加坚定我把这个系列写完的决心,也能更好的督促自己的学习,分享自己的学习成果.还记得上篇文章中最后提及到,假如服务越来越多怎 ...

随机推荐

  1. 引入样式在Element UI (Vue 2)和Element Plus (Vue 3)中的不同

    引入样式 Element UI (Vue 2):   import 'element-ui/lib/theme-chalk/index.css'; Element Plus (Vue 3):   im ...

  2. 题解:CF1971C Clock and Strings

    题解:CF1971C Clock and Strings 题意 在上图的一个圆中,给予你四个点 \(a,b,c,d\),判断线段 \(ab\) 与线段 \(cd\) 是否相交. 思路 先设置一个字符串 ...

  3. springsecurity使用:登录与校验

    首先是引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...

  4. cgroup限制进程cpu

    编写一个死循环脚本 [root@workstation ~]# cat circle.sh #!/bin/bash a=1 while true do let a++ done 查看top 使用cgr ...

  5. Jmeter函数助手33-split

    split函数用于根据分隔符拆分传递给它的字符串,并返回原始字符串. String to split:填入需要转换的字符串 函数名称.用于存储在测试计划中其他的方式使用的值:存储结果的变量名 Stri ...

  6. Netty的源码分析和业务场景

    Netty 是一个高性能.异步事件驱动的网络应用框架,它基于 Java NIO 构建,广泛应用于互联网.大数据.游戏开发.通信行业等多个领域.以下是对 Netty 的源码分析.业务场景的详细介绍: 源 ...

  7. 【Keepalived】KP + NGINX 多机热备学习

    案例搭建 环境是三台机器,两台也可以 最后一个IP是测试的VIP 192.168.124.21 centos6-1 192.168.124.22 centos6-2 192.168.124.23 ce ...

  8. 【Kafka】02 原生集群部署

    基于大数据教程的环境: 192.168.101.11 centos7-01 192.168.101.12 centos7-02 192.168.101.13 centos7-03 搭建Kafka环境需 ...

  9. 阿里提供的免费DNS服务器

    阿里提供的免费DNS服务器的介绍网页: https://developer.aliyun.com/mirror/DNS nameserver 223.5.5.5 nameserver 223.6.6. ...

  10. error while loading shared libraries: libxml2.so.2: cannot open shared object file 解决方法

    参考: https://blog.csdn.net/qq_39779233/article/details/128215517 ==================================== ...