如何使用 RESTful API 提供静态(或动态?)HTML 文件?

Chi*_*ser 5 html api rest restful-architecture

嗨,我正在研究 RESTful API 并制作一个在本地运行的网站以进行锻炼。

我认为 RESTful 是一个很好的方式。CRUD 操作可以通过 HTTP 方法识别,我们可以用一个 url 处理它们。

但最令我困惑的是,我们如何提供请求 CRUD 操作所需的 HTML 文件?

例如,如果我正在实施一个论坛,我需要 API 来在论坛中发布 CRUD 帖子,例如


[GET] /forum - 查看论坛所有帖子
[POST] /forum - 创建新帖子
[GET] /forum/:id - 查看帖子 id
[PUT] /forum/:id - 修改帖子 ID
[ DELETE] /forum/:id - 删除 id 的帖子

想想我们如何使用一个论坛,我们至少需要 3 种类型的 HTML 页面。
它们是,
1. 查看论坛中所有帖子的页面。
2.一个页面看具体帖子。
3. 输入标题和内容以创建(或修改)新帖子的页面。

上面的 GET 请求可以轻松提供第一种和第二种 HTML 文件。
但是对于第三种类型的 HTML 文件,我需要对上述 API 使用额外的参数,或者创建一个新的 API,例如 /forum/createpost 来提供此类 HTML 文件。

我认为,从 RESTful 的角度来看,我错过了一些东西,需要区分服务静态(或动态)HTML 和处理 CRUD 请求。

处理此问题的最佳做法是什么?
我也发现了一些关于这个问题的问题,但我找不到明确的答案。

Ajo*_*tia 9

我认为您正在混淆应用程序的两个独立部分。一种是为 CRUD 操作提供端点的 REST API。发送API 请求的 HTML 文件不是 REST API 的一部分。它们由一个 Web 应用程序提供服务,该应用程序为用户提供前端,并在后端调用 REST API 以获取要显示的信息。换句话说,进行调用的 Web 应用程序是您的表示层。REST API 是您的业务逻辑。据推测,REST API 与数据库交互以向其写入数据和从中读取数据。那就是你的持久化或存储层。