# Tõrkeotsing

> Kõige sagedamini klienti integreerides esinevad tõrked – sisseehitatud kassa avaneb hüpikaknana, aknad on blokeeritud, konteinereid pole ja konsoolis kuvatakse hoiatusi.

Klient logib kõik brauserikonsooli saadetavad teated prefiksiga `[Entase API]`. Avage esmalt konsool.

## Kassa avaneb paneeli asemel hüpikaknana

Tavapärased põhjused kontrollimise järjekorras:

1. **Domeen ei ole usaldusväärne päritolu.** Lisage see jaotises Seaded → Integratsioonid, kasutades `www.`-prefiksit, mida teie sait tegelikult kasutab – vt [Integratsioonid ja kassa kohandamine](/organizers/settings/integrations-and-checkout-customization.md).
2. **Lehte ei edastata HTTPS-i kaudu.** Ebaturvalisel lehel ei kasutata kunagi sisseehitatud kassat.
3. **Avalik võti puudub.** Ilma `pk`-ta ei saa klient kontrollida, kas sisseehitatud kassa on lubatud, mistõttu kasutatakse hüpikakent.
4. **`book()` käivitati liiga vara.** Õiguste kontroll on asünkroonne ja kuni vastuse saabumiseni on režiim hüpikaken. Lehe laadimisel automaatselt avatud kassa võib sellest ette jõuda – vt [Kassarežiimid](/developers/js-client/checkout-modes.md).
5. **Teie Content Security Policy blokeerib `connect-src`-i**, mistõttu kontroll ei lõpe kunagi. Konsoolis kuvatakse blokeeritud päring.

`entase.getCheckoutMode()` tagastab lahendatud režiimi ja on kiireim viis konfiguratsiooniprobleemide eristamiseks ajastusega seotud probleemidest.

## "Pane checkout mode enabled for localhost"

Arenduse ajal on see ootuspärane. Klient eeldab `localhost`-i ja `127.0.0.1` puhul paneelirežiimi, et saaksite arendada sisseehitatud paigutusega, ning kuvab hoiatuse, sest see eeldus ei ütle tootmiskeskkonna kohta midagi. Lisage enne avaldamist oma tegelik domeen usaldusväärsete päritolude hulka.

## Hüpikaken on blokeeritud

Brauserid lubavad akna avada ainult kasutaja toimingu ajal. Kutsuge `book()` välja sünkroonselt klikikäitlejas, mitte pärast `await`-i, `fetch`-i või `setTimeout`-i. Vt [Kassarežiimid](/developers/js-client/checkout-modes.md).

## Paneel avaneb tühjana

Kassa iframe blokeeriti. Lubage oma Content Security Policy direktiivis `frame-src` aadress `https://www.entase.com` – vt [Kliendi installimine](/developers/js-client/installing-the-client.md).

## "Entase is not defined"

Skript ei olnud teie koodi käivitumise ajaks veel laadimist lõpetanud. See juhtub, kui `client.js` laaditakse atribuudiga `async` või `defer` või kui see paigutatakse seda kasutava skripti järele. Oodake sündmust `entase:ready` – vt [Kliendi installimine](/developers/js-client/installing-the-client.md).

## "Trying to book an event after the Client has been destroyed"

Eksemplaril kutsuti välja `destroy()` ja seda ei saa enam kasutada. Ühelehelistes rakendustes tähendab see tavaliselt, et komponent lõpetas oma kliendi töö, kuid jagatud viide jäi alles. Looge uue vaate jaoks uus eksemplar.

## "Entase frame initialization failed. Container not found."

Ainult manustatud vidina puhul. Konfiguratsioonis olev `obj`-kood ei vasta ühelegi lehel olevale elemendile. Konteineri ID peab olema `entase_`, millele järgneb sama kood, ning see peab enne vidina lähtestamist DOM-is olemas olema – kontrollige kirjaviga või seda, kas konteiner renderdatakse hiljem teie enda skriptide poolt.

## Käivitub ainult viimane sündmusekuulaja

`on()` säilitab iga sündmuse nime kohta ühe tagasihelistusfunktsiooni ja teise registreerimine asendab esimese. Registreerige üks kord ja jagage sündmused selle tagasihelistusfunktsiooni sees edasi – vt [Sündmused](/developers/js-client/events.md).

## Hüpikaken avaneb valel ekraanil

Keskpunkt arvutatakse eksemplari loomisel ning seda ei uuendata, kui külastaja brauseriakent liigutab. Arvutage see enne broneerimist uuesti `setTopWindowCenter()` abil – vt [Meetodite viide](/developers/js-client/methods.md).

## Jälgimisparameetrid puuduvad tellimustelt

Eraldiseisev klient ei loe teie lehe URL-i. Edastage parameetrid ise `tprm`-i – vt [Jälgimine ja nõusolek](/developers/js-client/tracking-and-consent.md). Pange tähele, et `setTracking()` asendab kogu objekti, mitte ei ühenda seda olemasolevaga, mistõttu hilisem väljakutse võib varasemad parameetrid märkamatult eemaldada.
