rull commited on
Commit
383e4b5
·
verified ·
1 Parent(s): ec021a8

browser caching

Browse files
Files changed (1) hide show
  1. index.js +14 -5
index.js CHANGED
@@ -12,6 +12,8 @@ import sharp from 'sharp'
12
  import util from 'util'
13
  import yts from 'yt-search'
14
 
 
 
15
  const utils = {
16
  getBrowser: (...opts) => playwright.chromium.launch({
17
  args: [
@@ -49,9 +51,10 @@ const utils = {
49
  fetchPOST: (url, body, opts = {}) => fetch(url, { method: 'POST', body, ...opts }),
50
  formatSize: (n) => bytes(+n, { unitSeparator: ' ' }),
51
  generateBrat: async (text) => {
52
- const browser = await utils.getBrowser()
 
53
  try {
54
- const page = await browser.newPage()
55
  await page.goto('https://www.bratgenerator.com/')
56
  await page.click('#toggleButtonWhite')
57
  await page.locator('#textInput').fill(text)
@@ -62,8 +65,8 @@ const utils = {
62
  } catch (e) {
63
  throw e
64
  } finally {
65
- await browser.close()
66
- }
67
  },
68
  getError: (e) => String(e).startsWith('[object ') ? 'Internal Server Error' : String(e),
69
  isBase64: (str) => {
@@ -300,4 +303,10 @@ app.all(/^\/y(outube|t)(\/(d(ownload|l)|search)?)?/, async (req, res) => {
300
 
301
  // app.use((req, res, next) => {})
302
 
303
- app.listen(7860, () => console.log('App running on port 7860'))
 
 
 
 
 
 
 
12
  import util from 'util'
13
  import yts from 'yt-search'
14
 
15
+ let browser = null;
16
+
17
  const utils = {
18
  getBrowser: (...opts) => playwright.chromium.launch({
19
  args: [
 
51
  fetchPOST: (url, body, opts = {}) => fetch(url, { method: 'POST', body, ...opts }),
52
  formatSize: (n) => bytes(+n, { unitSeparator: ' ' }),
53
  generateBrat: async (text) => {
54
+ if (!browser) browser = await utils.getBrowser()
55
+ let page
56
  try {
57
+ page = await browser.newPage()
58
  await page.goto('https://www.bratgenerator.com/')
59
  await page.click('#toggleButtonWhite')
60
  await page.locator('#textInput').fill(text)
 
65
  } catch (e) {
66
  throw e
67
  } finally {
68
+ if (page) await page.close()
69
+ }
70
  },
71
  getError: (e) => String(e).startsWith('[object ') ? 'Internal Server Error' : String(e),
72
  isBase64: (str) => {
 
303
 
304
  // app.use((req, res, next) => {})
305
 
306
+ app.listen(7860, async() => {
307
+ if (!browser) {
308
+ browser = await utils.getBrowser()
309
+ await browser.newPage()
310
+ }
311
+ console.log('App running on port 7860')
312
+ })