diff options
Diffstat (limited to 'DSACore/Controllers/TokensController.cs')
-rw-r--r-- | DSACore/Controllers/TokensController.cs | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/DSACore/Controllers/TokensController.cs b/DSACore/Controllers/TokensController.cs new file mode 100644 index 0000000..a85cabe --- /dev/null +++ b/DSACore/Controllers/TokensController.cs @@ -0,0 +1,25 @@ +using DSACore.Hubs; +using Microsoft.AspNetCore.Mvc; + +namespace DSACore.Controllers +{ + [Route("lobby/[controller]")] + [ApiController] + public class TokensController : Controller + { + // GET + [HttpGet("{token}")] + public ActionResult<string> Get(string token) + { + if (!int.TryParse(token, out var intToken)) + return BadRequest("The token has to be a 32 bit unsigned integer"); + + if (intToken == 42) return Ok("Scribble"); + + if (!Users.Tokens.Exists(x => x.GetHashCode() == intToken)) return NotFound(); + + var group = Users.Tokens.Find(x => x.GetHashCode() == intToken); + return Ok(group.Group); + } + } +}
\ No newline at end of file |