slogan3

Help me een mock API te maken die gebruikersauthenticatie stroomlijnt en sessiebeheer simuleert.

description

Door deze prompt te gebruiken, kun je ervoor zorgen dat je applicatie gebruikersauthenticatie en sessiebeheer correct afhandelt, waardoor beveiliging en gebruikerservaring verbeteren.

prompt

try_prompt

Ik wil een mock API ontwerpen die gebruikersauthenticatieprocessen nabootst, inclusief inloggen, uitloggen en sessiebeheer. API-doel: {{api_purpose}}. Belangrijke eindp ... more
generate_helper
disclaimerOnPageApi image_legal_disclaimer...

ai_answers

provider: openai
model: gpt-4.1-nano
Hier is een voorbeeldontwerp voor een mock API die gebruikersauthenticatieprocessen nabootst, inclusief inloggen, uitloggen, sessiebeheer, OAuth 2.0 en bijbehorende scenario's: **Basis URL:** https://mockapi.example.com/auth **Eindpunten:** 1. **POST /login** - Doel: Gebruiker inloggen en tokens ontvangen - Verzoekbody: ```json { "username": "string", "password": "string", "auth_method": "oauth2" } ``` - Antwoord: ```json { "access_token": "mock_access_token", "refresh_token": "mock_refresh_token", "expires_in": 3600, // in seconden "token_type": "Bearer" } ``` - Scenario's: succesvolle login, onjuiste gegevens (error), OAuth 2.0 flow simulatie 2. **POST /logout** - Doel: Gebruiker uitloggen en sessie/integriteit beëindigen - Verzoekheader: Authorization: Bearer {access_token} - Antwoord: ```json { "message": "Logout successful" } ``` - Scenario's: succesvolle logout, invalid token 3. **POST /token/refresh** - Doel: Verlopen access_token vernieuwen met refresh_token - Verzoekbody: ```json { "refresh_token": "mock_refresh_token" } ``` - Antwoord: ```json { "access_token": "nieuw_mock_access_token", "expires_in": 3600, "token_type": "Bearer" } ``` - Scenario's: geldige refresh_token, verlopen refresh_token (error) 4. **GET /session/status** - Doel: Sessiestatus controleren - Verzoekheader: Authorization: Bearer {access_token} - Antwoord: ```json { "active": true, "expires_in": 1800 } ``` - Scenario's: actieve sessie, verlopen sessie (error) **Sessievervalscenario's:** - Na een bepaalde tijd wordt het access_token niet meer geldig en moet het vernieuwd worden. - Bij het gebruik van een verlopen token geeft de API een foutmelding zoals 401 Unauthorized met een duidelijke boodschap. - Het testen van verval door tokens handmatig te laten verlopen of door een mock scenario te simuleren. **OAuth 2.0 simulatie:** - OAuth 2.0 Authorization Code flow of Implicit flow kan worden gesimuleerd door endpoints die een authorization URL en token-uitwisseling nabootsen. - Bijvoorbeeld: een GET /authorize endpoint die een mock authorization code teruggeeft. --- Met dit ontwerp kun je verschillende authenticatiescenario's testen, inclusief tokenvernieuwing, sessieverval en foutafhandeling.
provider: deepseek
model: deepseek-chat
Hier is een ontwerp voor een mock API voor gebruikersauthenticatiebeheer in het Nederlands, met de gevraagde functionaliteiten: --- ### **Mock API Ontwerp: Gebruikersauthenticatiebeheer** **Basisinformatie:** - **API Doel:** Simuleren van gebruikersauthenticatieprocessen. - **Authenticatiemethode:** OAuth 2.0 (Authorization Code Flow). - **Standaard Headers:** `Content-Type: application/json`. --- ### **Belangrijke Eindpunten:** #### 1. **POST /login** - **Doel:** Authenticeer een gebruiker en verstrek een toegangstoken. - **Request Body:** ```json { "username": "string", "password": "string", "client_id": "string", "redirect_uri": "string", "grant_type": "authorization_code" } ``` - **Response (Succes - 200 OK):** ```json { "access_token": "string", "token_type": "Bearer", "expires_in": 3600, "refresh_token": "string", "scope": "profile" } ``` - **Response (Fout - 401 Unauthorized):** ```json { "error": "invalid_credentials", "error_description": "Ongeldige gebruikersnaam of wachtwoord." } ``` #### 2. **POST /logout** - **Doel:** Meld een gebruiker af en maak de sessie ongeldig. - **Headers:** `Authorization: Bearer <access_token>` - **Response (Succes - 200 OK):** ```json { "message": "Succesvol uitgelogd." } ``` - **Response (Fout - 401 Unauthorized):** ```json { "error": "invalid_token", "error_description": "Token is ongeldig of verlopen." } ``` #### 3. **POST /token/refresh** - **Doel:** Vernieuw een verlopen toegangstoken met een refresh token. - **Request Body:** ```json { "refresh_token": "string", "grant_type": "refresh_token" } ``` - **Response (Succes - 200 OK):** ```json { "access_token": "nieuwe_token_string", "token_type": "Bearer", "expires_in": 3600 } ``` - **Response (Fout - 400 Bad Request):** ```json { "error": "invalid_refresh_token", "error_description": "Refresh token is ongeldig." } ``` --- ### **Sessievervalscenario's (voor testdoeleinden):** #### 1. **GET /session/status** - **Doel:** Controleer de geldigheid van een sessie. - **Headers:** `Authorization: Bearer <access_token>` - **Response (Actieve Sessie - 200 OK):** ```json { "active": true, "user_id": "gebruiker123", "expires_at": "2023-10-01T12:00:00Z" } ``` - **Response (Verlopen Sessie - 401 Unauthorized):** ```json { "error": "token_expired", "error_description": "Toegangstoken is verlopen." } ``` #### 2. **POST /session/invalidate** - **Doel:** Simuleer het vervallen van een sessie (bijv. voor testen van timeouts). - **Headers:** `Authorization: Bearer <access_token>` - **Response (Succes - 200 OK):** ```json { "message": "Sessie succesvol ongeldig gemaakt." } ``` --- ### **Testdata (Optioneel - voor mock implementatie):** - **Geldige Gebruiker:** - `username: "testuser"`, `password: "wachtwoord123"` - **Refresh Token:** `"mock_refresh_token_abc123"` - **Tokens verlopen standaard na 1 uur (3600 seconden).** --- ### **Opmerkingen voor Implementatie:** - Gebruik een mock server zoals **JSON Server** of **Postman Mock Server**. - Voor OAuth 2.0-scenarios, simuleer de `/authorize` endpoint indien nodig voor de Authorization Code Flow. - Test tokenverversing door een `expires_in` van 10 seconden in te stellen voor snelle tests. Laat het weten als je hulp nodig hebt bij de implementatie of aanvullende scenario's!