该应用可用于获取 Microsoft graph 的 refresh_token,以配合 E5 的续订程序
-
在 github 上 fork 项目
-
进入serverless应用后点击创建应用
-
选择 web 应用 - flask 框架
-
根据情况创建应用
-
等待部署成功,即可通过
资源列表
-API网关
-URL
访问
如果不想使用 serverless 应用(毕竟只使用一次,部署起来麻烦死了),并且您的电脑上曾经安装过 python,可以进行本地部署
-
克隆仓库
git clone https://github.com/ICE99125/E5_refresh_token.git
-
安装 virtualenv (如果已经安装过那就更好了)
pip install virtualenv
-
创建 python 虚拟环境
virtualenv venv
-
安装必要的依赖
pip install -r requirements.txt
-
删除 app.py 下的
host="0.0.0.0",port=9000
-
修改 templates - index.html 的第119行
const REDIRECT_URI = `${window.location.protocol}//${window.location.hostname}/release/`; ---> const REDIRECT_URI = 'http://localhost:5000'; // 5000 是flask的默认端口
-
将 Azure 的重定向地址改为
http://localhost:5000
目前本地部署仅火狐浏览器可以在 http://localhost:5000 或者 http://127.0.0.1:5000 上获取成功,其他浏览器只能在 http://localhost:5000 下才能成功
-
登陆Azure创建应用
-
重定向 URL 填写从 serverless 上获得的 URL
-
获取应用 ID
-
获取密钥
-
给应用一些权限
权限
分类 具体权限 - offline_access
file Files.Read.All
Files.ReadWrite.All
sites Sites.Read.All
Sites.ReadWrite.All
user User.Read.All
User.ReadWrite.All
directory Directory.Read.All
Directory.ReadWrite.All
mail Mail.Read
Mail.ReadWrite
MailboxSettings.Read
MailboxSettings.ReadWrite
请务必确保存在权限
offline_access
否则得不到 refresh_token 还会报错 -
万事具备,已经可以获取 refresh_token 了