LOKALE ONTWIKKELING · PRAKTISCH TESTEN
Localhost delen: mobiele previews en webhooks testen
Je website draait op je computer. Geef je telefoon, een klant of een webhookdienst een tijdelijke HTTPS-link om de site te bereiken. Deployen is niet nodig.
Voor het delen: controleer het lokale adres
Bekijk de URL van je ontwikkelserver. Protocol en poort zijn belangrijk: http://localhost:5173 en https://localhost:7143 zijn verschillende bestemmingen. Open precies dat adres op je computer en voer een gebruikelijke actie uit voordat je de tunnel maakt.
Eén app, één poort
Gebruiken pagina en API hetzelfde lokale adres, dan bereikt één tunnel beide. Paden blijven behouden: een openbaar verzoek naar /contact komt lokaal aan op /contact. De tunnel kopieert of deployt je bestanden niet.
Frontend en API op aparte poorten
Een tunnel naar je frontend publiceert niet vanzelf een API op een andere poort. Een browser die localhost:3000 aanroept, bereikt het apparaat van de bezoeker. Gebruik de API-proxy van je ontwikkelserver of een bereikbare test-URL voor de API en pas de frontend aan.
Open het openbare adres op je computer en op een ander apparaat. Werkt de lokale pagina wel en de openbare niet, houd dan beide URL’s bij de hand om appfouten te onderscheiden van tunnel- of hostconfiguratieproblemen.
Open localhost op je telefoon
Op je telefoon verwijst localhost naar de telefoon zelf, niet naar je computer. Open de openbare link of scan de QR-code in GhostlyShare.
- Schakel over op mobiele data om toegang buiten je wifi te testen.
- Test menu’s, formulieren, toetsenbord en bestandsuploads op het echte apparaat.
- Open een subpagina rechtstreeks en herlaad die. Controleer ook afbeeldingen en API-antwoorden.
Test je alleen op hetzelfde wifi-netwerk? Het lokale netwerkadres van je computer kan volstaan als de ontwikkelserver en firewall toegang toestaan. Een openbare tunnel helpt bij andere netwerken en externe diensten.

Een nuttige telefoontest in vijf minuten
- Navigatie en indeling
- Open het menu, draai je telefoon en bekijk een lange pagina. Let op horizontaal scrollen, bedekte knoppen en inhoud achter een vaste kop. Browseremulatie helpt, maar bootst niet elke echte interactie na.
- Formulieren en sessie
- Tik op elk veld en verstuur eerst een ongeldige en daarna een geldige waarde. Blijven foutmeldingen boven het toetsenbord zichtbaar? Werkt inloggen alleen op je computer, probeer dan een nieuwe sessie en controleer callbackadres en cookies.
- Verzoeken en laden
- Test een pagina met veel afbeeldingen en een actie die gegevens laadt. Een trage reactie via je thuisverbinding is geen prestatiemeting voor productie. Noteer pagina, apparaat en actie om het probleem lokaal na te bootsen.
Laat je werk aan een klant zien
Stuur de exacte pagina die je wilt laten beoordelen. Vertel wat de ontvanger moet testen en wanneer de preview sluit.
Voor het versturen
Gebruik een testaccount en voorbeeldinhoud. Controleer of de link zonder jouw cookies of aangemelde sessie werkt.
Vraag om een gerichte controle
Het contactformulier invullen, het mobiele menu bekijken of afrekenen met testbetalingen: een duidelijke taak levert bruikbare feedback op.
Hier is de preview voor onze bespreking vandaag. Controleer het mobiele menu en het contactformulier. Na ons gesprek sluit de link.
Maak feedback reproduceerbaar
Vraag om pagina-URL, apparaat, browser en de laatste actie voor het probleem. Een screenshot met ‘ik verwachtte X, maar Y gebeurde’ helpt meer dan ‘de pagina werkt niet’. Meld wijzigingen tijdens de bespreking: bezoekers zien die afhankelijk van je instellingen mogelijk direct, inclusief herladen.
Ontvang lokaal een webhook
Een webhookdienst kan localhost op jouw computer niet bereiken. Geef het openbare tunneladres met het callbackpad op. Dit voorbeeld gaat ervan uit dat je app al POST-verzoeken op /api/webhooks/demo verwerkt.
http://localhost:5173/api/webhooks/demohttps://YOUR-TUNNEL.trycloudflare.com/api/webhooks/demo- Vervang YOUR-TUNNEL door je echte hostnaam en vul de volledige callback-URL in bij de testinstellingen van de aanbieder.
- Laat handtekeningcontrole ingeschakeld. Bewaar het webhookgeheim lokaal en verstuur bij de aanbieder een testevent.
- Controleer de afleverstatus en lokale logs. Geef het verwachte succesantwoord terug en verwerk herhaalde afleveringen zonder de actie te herhalen.
Een wachtwoordscherm in de browser kan de webhookafzender blokkeren. Gebruik een bereikbaar endpoint en controleer ondertekende verzoeken. CORS geldt voor browserverzoeken, niet voor webhooks tussen servers.
Controleer het webhookantwoord, niet alleen de browser
Het openen van een callback-URL in de browser verstuurt meestal GET. Veel webhookendpoints verwachten POST; een browserfout bewijst dus geen afleverprobleem. Verstuur het testevent en vergelijk tijdstip en aflever-ID met je lokale log.
- 404 / 405
- Controleer pad en HTTP-methode. Gebruik de API-poort, niet vanzelfsprekend die van de frontend. Een bereikbare startpagina betekent niet dat het callbackendpoint bestaat.
- 401 / 403
- Controleer waar het verzoek werd geweigerd: previewwachtwoord, appauthenticatie of handtekeningcontrole. Volg bij ondertekende gegevens de regels voor de oorspronkelijke requestbody; die verwerken en herschrijven vóór controle kan de handtekening ongeldig maken.
- 5xx / Timeout
- Controleer of de app draait en het verzoek ontving. Respecteer bij trage verwerking de antwoordtermijn van de aanbieder en gebruik zo nodig achtergrondtaken. Test herhaalde aflevering om dubbele bestellingen of berichten te voorkomen.
Gebruik de testmodus van de aanbieder en log geen geheimen of volledige persoonsgegevens. Een geslaagde test controleert aflevering en appverwerking, maar vervangt de integratie-eisen van de aanbieder niet.
De link opent, maar iets werkt niet?
De openbare link bereikt de app niet
Open eerst de lokale URL. Controleer poort, HTTP of HTTPS en of de app en tunnel nog draaien.
Afbeeldingen of API-aanroepen mislukken
Zoek naar vast ingestelde localhost-URL’s. Gebruik waar mogelijk relatieve paden. Een API op een andere poort heeft een eigen bereikbare route nodig.
De app verwijst door naar localhost
Controleer de openbare basis-URL, vertrouwde proxy’s en inlogcallbacks. Sta de echte previewhost toe in plaats van hostcontroles overal uit te schakelen.
Live herladen of WebSockets werken niet
Controleer of WebSockets de openbare host en wss op HTTPS-pagina’s gebruiken. Sommige ontwikkelservers vereisen een aparte HMR-hostinstelling.
De webhook krijgt geen succesantwoord
Controleer callbackpad, HTTP-methode, handtekeninggeheim en afleverlog. Werk de callback-URL bij zodra je een nieuwe tijdelijke tunnel start.
Rond de test af en stop met delen
Stop het delen in GhostlyShare of de terminaltunnel met Ctrl+C. Een vervaltijd kan een geplande preview automatisch beëindigen. Verwijder na afloop ook tijdelijke callback-URL’s bij de webhookaanbieder.
Een vast adres nodig voor langdurig gebruik?
Een tijdelijke preview is geen deployment. Onze gids voor thuis hosten behandelt benoemde tunnels, domeinen, Windows-services en gebruikskosten.
Een permanente Cloudflare Tunnel instellen →Vragen over lokale previews
FAQ
Waarom werkt localhost niet op mijn telefoon?
Localhost verwijst naar het apparaat dat het adres opent. Gebruik op je telefoon de openbare previewlink om de app op je computer te bereiken.
Moet mijn computer aan blijven?
Ja. Je computer, lokale app en tunnel moeten blijven draaien. Slaapstand of het stoppen van de tunnel maakt de preview onbereikbaar.
Heb ik een domein nodig voor een preview?
Nee. Een tijdelijke tunnel geeft je een openbaar HTTPS-adres. Werk gedeelde links en webhookinstellingen bij als dat adres verandert.
