Jakich uzyc headerow przy wysylce kodu JS do przegladarki z serwera php?

0

Witam,

Dolaczam taka linijke kodu do kazdej podstrony w moim projekcje. Dziala to tak, ze generuje kod JavaScript w PHP i wysyłam do przeglądarki.

 <script src="/pluginjs?t=1564230992" defer="defer"></script>

Zastanawiam się, jakich uzyc hederów. Jak do tej pory zastosowalem wylaczacznie ponizszy i mam silne wrazenie, ze moge znacznie to lepiej poprawic przez dodanie kilku dodatkowych hederow. Macie moze pomysly jakie? Ktos ma doswiadcznie z headerami? Albo ma liste najczescie uzywanych? Dodam, ze za kazdym razem skryp wysyla inny kod. Wiec nie chce cachowac tego links. Do tego zwraca zmiene JS z tekstem.

header( 'application/javascript' );
0

Jak chcesz coś polepszyć, to raczej użyj include i wypluj ten JS w HTML-u wewnątrz bloku <script>(...)<script>. Oszczędzisz przeglądarce jedno odwołanie do serwera.

0

include? Na pewno lepiej nie wysylac dodatkowego requesta do serwera. Nie zawsze jest to takie latwe. Poza tym, samo ladowanie pliku nie opoznia ladowania strony defer="defer". A jeden maly request nie zaszkodzi.

0
poniatowski napisał(a):

defer="defer"
To może sobie cały ten skrypt zapakować w funkcję:

document.addEventListener('DOMContentLoaded', (event) => {
  [moje polecenia]
});

Albo po prostu dopisać ten kod na samym końcu strony.

0

Jedno pytanie - czemu za każdym razem jest tam inny kod? Co się dzieje takiego unikalnego że generujesz osobny kod? Bo jak znam życie to źle do tego podchodzisz.

0

@mr_jaro: Kod JS pobiera informacje o podstronie i o tym co zrobil uzytkownik, nastepnie wysyla te dane to zewnetrznego serwera przez xhr. Link jest umieszczony na sklepie online. Skrypt ma na celu sledzenia uzytkownika etc. Powodem, przeniesienia logiki z PHP na JS bylo wyłącznie to, że takie rozwiażanie jest o wiele łatwiejsze w implementacji. Cieżko jest do kazdego view dodac odpowiednie skrypt JS. Np. jak uzytkownik loguje sie, rejestruje, dodaje/usuwa cos zkoszyka etc. Musze wygenerowac odpowiedni kod JS.

Podam dokladny przyklad. Klient rejestruje sie do mojego sklepu. Po stronie serwera zapisuje userId do $_SESSION. Nastepnie wysylany jest ten request, ktory przy pomocy PHP buduje mi skrykt JS. Taki skrypt zawiera informacje o tym uzytkowniku (imie, nazwisko, wiek, email etc) i wysyła to do zewnetrznego serwera.

0

Nadal nie rozumiem, czemu się nie da mieć 99% kodu js wydzielonego jako normalny statyczny plik, i mieć tylko pewne wywołania i definiowane zmienne w php.

0

Ponieważ jest to bardzo czasochłonne podejście. Platforma jest bardzo duza. Zbudowana ponad 10 czy nawet 14 lat temu. Na niej jest stworzona spora ilość podsklepów (subdomen) i jest masa ilość plików HTML. Zajełoby mi wiecznoć ogarnąć każdą podstronę i plik HTML.

0

Czyli ktoś kiedyś popełnił błąd i teraz musisz się z tym użerać, a pieniędzy na refaktoring nie ma. Pozostaje zasada "zostawiaj kod lepszym niż go zastałeś".

0

Do tego jest cała masa innych drobnych problemow. Np jeden z najbardziej uczeszczanych checkoutów laduje podstrony przez ajax i juz nie wyslesz requestow do zewnetrzengo serwera. Poniewaz jak ladujesz plik HTML przez .load() to nie wyslesz z takiego kodu drugiego ajaxa. A ja to ladnie ogarnalem. Mam skrypt JS, ktory sledzi mi ajaxy. Jezeli jakis zostal wyslany to dodaje link JS z kodem sledzenia uzytkownika. Jest cala masa takich problemow to nie takie proste. Na poczatku tez wyszedlem z kodem na kazdym view, ale to nie bylo w ogole proste, powaznie.

A to sa jedne z najprostsztch przykladow kodu JS, ktory generuje w PHP: https://github.com/optimove-tech/Web-SDK-Integration-Guide#basic-setup

1 użytkowników online, w tym zalogowanych: 0, gości: 1