• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

node.js obsługa pętli zdarzeń - zjawisko wyścigów?

Object Storage Arubacloud
0 głosów
187 wizyt
pytanie zadane 29 stycznia 2023 w Nasze projekty przez lnkoc Stary wyjadacz (13,960 p.)

Witam ponownie,

swego czasu postanowiłem rozwijać swoje umiejętności we Frontendzie korzystając z VUE.js.

Zająłem się pisaniem własnej strony domowej, z mikroblogiem, które ostatnimi czasy rozwijam. Nie mniej jednak w pewnym momencie doszedłem do ściany i nie wiem, od której strony problem ugryźć, ale po kolei. Backend postanowiłem pisać w skrypcie dla node.js, ze względu na to, że nie musiałbym przełączać się między językami pisząc końcówkę w BE (być może to okazało się strzałem w kolano, ze względu na mniejszą dostępność hostingów, ale też zapewne zupełnie inny sposób działania, niż jak to jest na przykład w PHP). Źródełko z kodem serwera znajduje się tutaj: https://github.com/lnkoc/ublogApi/blob/master/index.js Sam problem z którym się mierzę, polega na tym, że mam w komponencie dwa komponenty CommentsLoader i CommentsBin, które łączą się z bazą danych i pobierają (z założenia) dane (przez axios (kolejno z BE: /getUndoneComments i /getBinComments))  https://github.com/lnkoc/uBlog_vite_router/blob/master/src/components/dashboard/blog/Summary.vue nie mniej jednak tak się nie dzieje i konsola zwraca błąd 401 w przypadku co najmniej jednego komponentu podczas ładowania (najczęściej drugiego komponentu), jak i przełączania pomiędzy elementami menu. 

Tym razem również proszę zarówno Fronendowych, Backendowych jak i Fullstack developerów o wyrozumiałość, jeśli problem jest zbyt oczywisty.

komentarz 29 stycznia 2023 przez ScriptyChris Mędrzec (190,190 p.)

Z tego co widzę, to 401 jest odsyłane na podstawie wartości zwróconej z funkcji sessionUpdate. Pokaż co zawiera zmienna result z wnętrza tej funkcji.

I upewnij się, czy w logach Node nie ma jakichś błędów złapanych w catch.

komentarz 29 stycznia 2023 przez lnkoc Stary wyjadacz (13,960 p.)
edycja 29 stycznia 2023 przez lnkoc

Funkcja, jeśli się wykonuje zwraca:

[
  { AGE: 156n, TOKEN: 'token5219340' },
  meta: [
    ColumnDef {
      collation: [Collation],
      columnLength: 16,
      columnType: 8,
      flags: 128,
      scale: 0,
      type: 'BIGINT'
    },
    ColumnDef {
      collation: [Collation],
      columnLength: 80,
      columnType: 253,
      flags: 0,
      scale: 0,
      type: 'VAR_STRING'
    }
  ]
]

Lub jeśli się nie wykonuje - zwraca jedynie meta...

Jeśli komponenty są ładowane jeden po drugim, (pierwszy po załadowaniu emituje zdarzenie, które pozwala na załadowanie drugiego (poprzez zmienną)) to działa, ale nie jest to rozwiązanie, które dało by się stosować na dłuższą metę.

[edit] Projekt ten powstał w celach edukacyjnych, ale mam w związku z tym pytanie - czy sesje oparte na ciasteczkach to aby naprawdę doby pomysł? 

[edit 2] Chyba sam odpowiedziałem sobie na swoje pytanie. Na ten moment nie widzę sensu wynajdywania koła na nowo i skorzystam z express-session. @ScriptyChris dzięki za odp.

 

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

+1 głos
1 odpowiedź 314 wizyt
pytanie zadane 23 marca 2021 w JavaScript przez Marak123 Stary wyjadacz (11,190 p.)
0 głosów
1 odpowiedź 169 wizyt
pytanie zadane 13 stycznia 2021 w JavaScript przez Marak123 Stary wyjadacz (11,190 p.)
0 głosów
0 odpowiedzi 544 wizyt
pytanie zadane 12 lipca 2021 w JavaScript przez _Visni4PL_ Obywatel (1,320 p.)

92,575 zapytań

141,424 odpowiedzi

319,649 komentarzy

61,960 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...