click below
click below
Normal Size Small Size show me how
rest api
| Question | Answer |
|---|---|
| Hvad er et REST API? | Et REST API er en måde at lade systemer kommunikere over HTTP, hvor man arbejder med ressourcer som data (fx brugere eller ordrer). Client–server Stateless Cacheable Uniform interface Layered system |
| Hvad er en ressource? | En ressource er et objekt, som API’et giver adgang til, fx: /api/users /api/users/5 Man bruger URL’er til at identificere ressourcer. |
| Hvilke HTTP metoder kender du? | GET – henter data POST – opretter data PUT – opdaterer data DELETE – sletter data PATCH - |
| Hvad betyder stateless? | Det betyder, at serveren ikke husker noget om tidligere requests. Hver request skal indeholde al nødvendig information. |
| Hvad er JSON? | JSON JavaScript Object Notation er et dataformat, som ofte bruges i REST API’er til at sende data mellem client og server. |
| Hvordan laver man et REST API i .NET? | Man bruger ASP.NET Core Web API og laver: Controllers Actions (GET, POST osv.) Routes |
| Hvad er en controller? | En controller er en klasse, der håndterer HTTP-requests og returnerer responses. [ApiController] [Route("api/users")] public class UsersController : ControllerBase { } |
| Hvad er routing? | Routing bestemmer, hvilken controller og metode der håndterer en bestemt URL. |
| Statuskoder | 200 OK – request lykkedes 201 Created – data oprettet 400 Bad Request – ugyldig input 404 Not Found – ikke fundet 500 Internal Server Error – serverfejl |
| Hvad er JWT? | JSON Web Token: Indeholder claims Signeret (typisk HMAC eller RSA) Stateless authentication |
| Hvordan versionerer du et API? | URL: /api/v1/customers Header-baseret Query string URL-versionering er mest brugt og tydelig. |
| Hvornår bruger man 401 vs 403? | 401: Brugeren er ikke autentificeret 403: Brugeren er autentificeret, men mangler rettigheder |
| Client–server | Client–server er en netværksmodel, hvor opgaver deles mellem en aktiv brugerenhed (klient, f.eks. webbrowser) og en central computer (server), der leverer data og ressourcer |
| Hvad er ASP.NET Core Web API? | En framework fra Microsoft til at bygge RESTful API’er. Lader klienter (frontend, apps, andre services) hente eller ændre data via HTTP. Arbejder typisk med JSON som dataformat |
| Controllers | håndterer requests |
| Actions | metoder i controllers (GET, POST osv.) |
| Routing | bestemmer hvilken URL der kalder hvilken action |
| Middleware | kode, der kører på requests/responses i pipeline |
| Dependency Injection | DI betyder, at vi fortæller frameworket, hvilke services vores controller skal bruge, så vi slipper for selv at oprette objekter. |
| Validering | Med [ApiController] og DataAnnotations: public class User { [Required] public string Name { get; set; } [EmailAddress] public string Email { get; set; } } Hvis Name mangler, sender API automatisk 400 Bad Request. |
| Fejlhåndtering | For simple ting: returner BadRequest, NotFound, Conflict osv. For globale fejl: middleware med try/catch og logger: |
| Hvad gør [ApiController]? | Automatisk input-validering, requirement for [FromBody], hjælper med 400-fejl |
| Hvordan håndterer du afhængigheder i controllers? | Via DI (constructor injection), registreret i Program.cs |