Клиентът се предоставя от Entase CDN като един файл. Няма npm пакет, няма пакет за компилиране и няма зависимост, която да поддържате актуална – винаги получавате текущата версия.
<script src="https://js.entase.com/client.js"></script>Зареждането на скрипта дефинира глобален клас Entase. Сам по себе си той не прави нищо друго: няма мрежови заявки, няма промени в DOM, не се визуализира нищо. Всичко започва, когато създадете екземпляр.
Създаване на екземпляр
const entase = new Entase({ pk: 'YOUR_PUBLISHABLE_KEY' });Създайте един екземпляр на страница и го използвайте повторно за всяко събитие. Конструкторът регистрира слушател за message в прозореца и започва да установява кой режим на плащане е разрешен за вашия домейн, така че създаването на няколко екземпляра означава дублирани слушатели и дублирани заявки за установяване без никаква полза.
Всяка опция има стойност по подразбиране, така че new Entase() без аргументи е валиден – но без pk клиентът не може да провери дали вашият домейн може да използва вградено плащане и винаги ще се върне към изскачащ прозорец. Вижте Режими на плащане.
Асинхронно зареждане на скрипта
Ако зареждате client.js с async или defer, класът все още няма да съществува, когато се изпълни вашият вграден скрипт. Библиотеката изпраща събитие entase:ready в window, след като се зареди, така че изчакайте това събитие:
<script src="https://js.entase.com/client.js" async></script>
<script>
let entase = null;
const init = () => { entase = new Entase({ pk: 'YOUR_PUBLISHABLE_KEY' }); };
if (typeof Entase !== 'undefined') init();
else window.addEventListener('entase:ready', init);
</script>Проверката с typeof първо е важна: ако скриптът вече е завършил зареждането си, entase:ready вече е изпратено и слушането за него би чакало безкрайно.
Почистване
В едностранично приложение извикайте destroy(), когато изгледът, който притежава екземпляра, се демонтира:
entase.destroy();Това премахва слушателите на прозореца, регистрирани от клиента. Унищожен екземпляр не може да се използва повторно – извикването на book() върху него записва грешка и не прави нищо. Вместо това създайте нов екземпляр.
Политика за сигурност на съдържанието
Ако сайтът ви изпраща заглавка Content-Security-Policy, за плащането са нужни:
script-src https://js.entase.com– за зареждане на библиотеката.frame-src https://www.entase.com– плащането се визуализира в iframe в режим на панел.connect-src https://www.entase.com– клиентът извиква API на Entase, за да определи разрешения режим на плащане.
Без frame-src режимът на панел показва празен панел. Без connect-src установяването на режима е неуспешно и всяко плащане се отваря като изскачащ прозорец.