Admin trigger scan task api

This commit is contained in:
LittleSheep 2025-01-25 22:08:36 +08:00
parent ab0a87106b
commit a006e15682
2 changed files with 22 additions and 0 deletions

View File

@ -0,0 +1,16 @@
package api
import (
"git.solsynth.dev/hypernet/nexus/pkg/nex/sec"
"git.solsynth.dev/hypernet/reader/pkg/internal/services"
"github.com/gofiber/fiber"
)
func adminTriggerScanTask(c *fiber.Ctx) error {
if err := sec.EnsureGrantedPerm(c, "AdminTriggerNewsScan", true); err != nil {
return err
}
go services.ScanNewsSources()
return c.SendStatus(fiber.StatusOK)
}

View File

@ -1,12 +1,18 @@
package api
import (
"git.solsynth.dev/hypernet/nexus/pkg/nex/sec"
"github.com/gofiber/fiber/v2"
)
func MapAPIs(app *fiber.App, baseURL string) {
api := app.Group(baseURL).Name("API")
{
admin := api.Group("/admin").Name("Admin")
{
admin.Post("/scan", sec.ValidatorMiddleware, adminTriggerScanTask)
}
api.Get("/well-known/sources", getNewsSources)
api.Get("/link/*", getLinkMeta)
}