From 12eaa5814ef20b0910e8d64a753378b6f6797989 Mon Sep 17 00:00:00 2001 From: Jake Mannens Date: Fri, 22 May 2026 00:52:16 +1000 Subject: Initial commit --- Server/Controllers/ApiFeedController.cs | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 Server/Controllers/ApiFeedController.cs (limited to 'Server/Controllers/ApiFeedController.cs') diff --git a/Server/Controllers/ApiFeedController.cs b/Server/Controllers/ApiFeedController.cs new file mode 100644 index 0000000..fb260e6 --- /dev/null +++ b/Server/Controllers/ApiFeedController.cs @@ -0,0 +1,23 @@ +using HyperBooru.ApiModels; +using HyperBooru.Services; +using Microsoft.AspNetCore.Mvc; +using Microsoft.EntityFrameworkCore; + +namespace HyperBooru.Controllers; + +[ApiController] +[Route("/api/feed")] +public class ApiFeedController : Controller { + private IFeedService feedService; + + public ApiFeedController(IDbContextFactory dbFactory, IFeedService feedService) => + this.feedService = feedService; + + [HttpPost] + public IActionResult FetchChunkAsync([FromBody] FeedRequest feedRequest) { + if(feedRequest.Count > 1000) + return BadRequest("Total number of requested items exceeds maximum"); + + return Ok(feedService.LoadChunk(feedRequest).Select(m => m.Guid).ToArray()); + } +} -- cgit v1.3