Azure AD B2C JavaScript Node.js Web API 项目教程
1. 项目的目录结构及介绍
active-directory-b2c-javascript-nodejs-webapi/
├── config/
│ └── config.json
├── controllers/
│ └── tasksController.js
├── models/
│ └── task.js
├── node_modules/
├── routes/
│ └── tasks.js
├── views/
│ └── index.ejs
├── app.js
├── package.json
└── README.md
- config/: 包含项目的配置文件
config.json
。 - controllers/: 包含控制器文件
tasksController.js
,负责处理业务逻辑。 - models/: 包含数据模型文件
task.js
。 - node_modules/: 包含项目依赖的 Node.js 模块。
- routes/: 包含路由文件
tasks.js
,定义 API 路由。 - views/: 包含视图文件
index.ejs
,用于渲染页面。 - app.js: 项目的启动文件。
- package.json: 包含项目的依赖和脚本信息。
- README.md: 项目的说明文档。
2. 项目的启动文件介绍
app.js
是项目的启动文件,负责初始化应用并启动服务器。以下是 app.js
的主要内容:
const express = require('express');
const passport = require('passport');
const config = require('./config/config.json');
const tasksRouter = require('./routes/tasks');
const app = express();
// 初始化 Passport
require('./passport')(passport, config);
// 设置中间件
app.use(express.json());
app.use(passport.initialize());
// 设置路由
app.use('/api/tasks', tasksRouter);
// 启动服务器
const port = process.env.PORT || 3000;
app.listen(port, () => {
console.log(`Server is running on port ${port}`);
});
- 初始化 Passport: 加载 Passport 配置并初始化。
- 设置中间件: 使用 Express 的 JSON 解析中间件和 Passport 初始化中间件。
- 设置路由: 将
/api/tasks
路由指向tasksRouter
。 - 启动服务器: 监听指定端口并启动服务器。
3. 项目的配置文件介绍
config/config.json
是项目的配置文件,包含应用的配置信息,如租户名称、客户端 ID、策略名称等。以下是 config.json
的内容示例:
{
"credentials": {
"tenantName": "fabrikamb2c",
"clientID": "93733604-cc77-4a3c-a604-87084dd55348"
},
"policies": {
"policyName": "B2C_1_susi"
},
"resource": {
"scope": ["tasks.read"]
},
"metadata": {
"authority": "login.microsoftonline.com"
}
}
- credentials: 包含租户名称和客户端 ID。
- policies: 包含策略名称。
- resource: 包含 API 的访问范围。
- metadata: 包含身份验证服务器的元数据。
以上是 Azure AD B2C JavaScript Node.js Web API 项目的目录结构、启动文件和配置文件的介绍。希望这份教程能帮助你更好地理解和使用该项目。