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

Node js - polaczenie api z sciezkami do stron

0 głosów
141 wizyt
pytanie zadane 30 stycznia 2020 w JavaScript przez mreo Użytkownik (790 p.)
Witam, linki z przykladowego adresu test/client/... sluzyza do wyswietlania stron html wraz z skryptem, ktory pobiera dane z api tego samego servera z linkow typu test/api/...

Przez co

1. Node.js serwuje html z skryptem js

2. Skrypt js laczy sie z api servera i pobiera dane (rest)

3. Danymi uzupelnia plik html

 

Nie podoba mi sie to rozwiązanie, jak takie cos powinno wyglądac i jak to robic poprawnie?

2 odpowiedzi

+1 głos
odpowiedź 30 stycznia 2020 przez Comandeer Guru (562,740 p.)

Swego czasu pojawiła się koncepcja middleendu (rozbudowana następnie jako backends for frontends). Koncepcja ta zakłada, że pomiędzy API (backendem) zwracającym dane a Twoją stroną (frontendem) znajduje się jeszcze tzw. middleend, czyli usługa przekształcająca dane pobrane z API na format dostosowany do konkretnego zastosowania. W tym wypadku middleend mógłby służyć do generowania HTML-a na podstawie tego, co zwraca API. Dodatkowo ukrywałby sam fakt istnienia API.

komentarz 30 stycznia 2020 przez antyprogramista Bywalec (2,120 p.)

Swego czasu pojawiła się koncepcja middleendu (rozbudowana następnie jako backends for frontends). 

tak dziala https://www.primefaces.org/ dla javy ?

 

Do autora temat:

Koledzy ktorzy uzywaja takiego all in one, potem prosza mnie o pomoc, bym pobabral sie za nich w JS, bo oni nie umieja, bo uzywaja tylko JAVA.

To pokazuje minusy takich rozwiazan, ktore na poczatku wydaja sie atrakcyjne a potem kazdy detal trzeba rozpatrywac ze strony tego rozwiazania a nie technologii, potem dochodi debugowanie, gdyz nie da sie tego latwo odseparowac i przetestowac.

Dlatego dobrze jest uzywac malych autonomizcnych elementow a nie duzych kombajnow, bo potem sie trzeba meczyc i nie ma odwrotu, bo kto TObie pozwoli wieloletni projekt przepisac na nowo?

 

komentarz 30 stycznia 2020 przez Comandeer Guru (562,740 p.)

tak dziala https://www.primefaces.org/ dla javy ?

Nie, PrimeFaces to zupełnie coś innego, niemającego nic wspólnego z koncepcją middleendu.

 Koledzy ktorzy uzywaja takiego all in one, potem prosza mnie o pomoc, bym pobabral sie za nich w JS, bo oni nie umieja, bo znaja tylko JAVA

Totalnie rozminąłeś się z tym, o czym piszę… Middlend nie ma nic wspólnego ani z JS-em, ani z "all in one".

To pokazuje minusy takich rozwiazan, ktore na poczatku wydaja sie atrakcyjne a potem kazdy detal trzeba rozpatrywac ze strony tego rozwiazania a nie technologii, potem dochodi debugowanie, gdyz nie da sie tego latwo odseparowac i przetestowac.

Może najpierw zapoznaj się z koncepcją middleendu/BfF, a dopiero potem komentuj? 

komentarz 30 stycznia 2020 przez antyprogramista Bywalec (2,120 p.)
edycja 30 stycznia 2020 przez antyprogramista

Może najpierw zapoznaj się z koncepcją middleendu/BfF, a dopiero potem komentuj? 

OK, dzieki za linki, pozwalaja lepiej zrozumiec co masz na mysli.

Nie jestem tak dobry w teorii jak Ty, jestem jednym z tych znienawidzonych, ktorzy nie maja takiej teoretycznej wiedzy, za to maja checi do praktycznych eksperymentow. Co daje nam szanse na ich wymiane.

Doceniam Twoj wklad, rowniez praktyczny, ogladalem Twoj kod z jednego softu waszej firmy.

 

Wracajac do tematu, nie dales rozwiazania, tylko rzuciles teoria, ktora nie spelnia oczekiwan, bo wymaga requestow, a kolega czeka...

Rozwiazaniem jest koncepcja PWA.

https://en.wikipedia.org/wiki/Progressive_web_application

Gdzie mozna rowniez przechowywac dane offline.

komentarz 30 stycznia 2020 przez Comandeer Guru (562,740 p.)

Wracajac do tematu, nie dales rozwiazania, tylko rzuciles teoria, ktora nie spelnia oczekiwan, bo wymaga requestow, a kolega czeka...

Pokaż mi, których oczekiwań zaproponowane przeze mnie rozwiązanie nie spełnia.

 

Rozwiazaniem jest koncepcja PWA.

https://en.wikipedia.org/wiki/Progressive_web_application

Gdzie mozna rowniez przechowywac dane offline.

Nie potrzeba do tego PWA, bo localStorage lub IndexedDB są dostępne dla każdej strony internetowej. Poza tym nigdzie nie widzę założenia, że to ma umożliwiać pracę offline.

PS fajnie byłoby, jakbyś nie edytował odpowiedzi po czasie, dopisując de facto całą treść, bo to utrudnia odpowiadanie.

komentarz 30 stycznia 2020 przez antyprogramista Bywalec (2,120 p.)
poczekajmy az sam zainteresowany odpisze, bo jak dotad nie mial okazji odpisac.

Niestety nie dam rady szybko zredagowac, czasem musze cos rozjasnic, poprawic, przepraszam za to.
0 głosów
odpowiedź 30 stycznia 2020 przez antyprogramista Bywalec (2,120 p.)
Jaki jest Twoj cel?

zmniejszenie ilosci Requestow?

Ladowanie wszystkiego za jednym razem moze przyniesc korzysci od strony ladowania, jesli to na prawde wplywa na czas, ale z drugiej strony bedziesz mial wiekszy balagan przy czestych zmianach, lepiej separowac pliki wedle przeznaczenia i optymalizowac po stronie serwera, np uzywajac http2

 

Mozesz to zrobic tak, ale pytanie, czy chcesz potem sie babrac

1. Node.js serwuje html z zalaczonym wewnatrz tagiem <script/> ze skryptem js, uzupelnianie danych bez potrzeby requestu

Podobne pytania

0 głosów
0 odpowiedzi 57 wizyt
pytanie zadane 7 września 2021 w JavaScript przez rszczepanski02 Użytkownik (700 p.)
0 głosów
1 odpowiedź 96 wizyt
pytanie zadane 6 lutego 2020 w JavaScript przez mreo Użytkownik (790 p.)
0 głosów
1 odpowiedź 99 wizyt
pytanie zadane 3 lutego 2020 w JavaScript przez mreo Użytkownik (790 p.)

86,486 zapytań

135,242 odpowiedzi

300,489 komentarzy

57,234 pasjonatów

Motyw:

Akcja Pajacyk

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

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...