gpt4 book ai didi

feathersjs - 如何在 FeathersJS 中实现自定义/复杂的操作路线

转载 作者:行者123 更新时间:2023-12-04 22:57:25 24 4
gpt4 key购买 nike

我需要实现一堆在 FeathersJS 应用程序上执行非常自定义/复杂操作的路由。

其中一条路线是 /Category/disableExclusiveContentsOf/:id 。它对六个数据库表运行查询,以查找与类别 :id 专门相关的行。我绝对不能使用 FeathersJS 提供的查询抽象来做到这一点。然后,它使用 FeathersJS 的“本地”API 来更新我找到的行,以便向客户端触发数据更新事件。

但是,如果我单独使用 Express 实现路由,Feathers 身份验证/授权 Hook 将不会运行,因此端点将不会受到保护,这是必需的。

我如何在 FeathersJS 应用程序中容纳这些东西?

最佳答案

您仍然可以使用 your own service 实现路由并将 :id 用作 route parameter :

app.use('/Category/disableExclusiveContentsOf/:id', {
find() {
// do complex stuff here
}
});

我建议更改的一件事是 URL 似乎是操作而不是面向资源的。这意味着有人可以使用 GET 请求更改您的应用程序数据,这通常被认为不是一个好习惯(例如,在某些情况下,Google 爬虫进来并删除/更改了很多东西)。

Feathers 鼓励您考虑资源而不是自定义路由和操作。在您的情况下,您将拥有一个 ExclusiveContents 服务,您可以将 POST 用于:
app.use('/Category/ExclusiveContents/:categoryId', {
create(data, params) {
// do complex stuff here
params.categoryId // the id of the category
data // -> additional data from the POST request
}
});

关于feathersjs - 如何在 FeathersJS 中实现自定义/复杂的操作路线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39632235/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com