Автор Тема: js хостнат другаде  (Прочетена 8543 пъти)

laskov

  • Напреднали
  • *****
  • Публикации: 3166
    • Профил
js хостнат другаде
« -: Nov 14, 2022, 10:08 »
Правя устройство за следене на температури като използвам този урок. Устройството е във вътрешна мрежа и няма да се вижда отвън. За да видят графиката, обаче, уеб клиентите трябва да имат достъп до Интернет, понеже се използва js, който се намира другаде:
Код:
<script src="https://code.highcharts.com/highcharts.js"></script>
До тук добре. Нямам проблем с това.
След като експериментирах с цел коректно изобразяване на часа, нещата се получиха така:
Код:
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.13/moment-timezone-with-data-2012-2022.min.js"></script>   
<script src="https://code.highcharts.com/highcharts.js"></script>

Това работи добре. Въпросът ми е: Такава ли е практиката - ползване на скриптове от другаде и счита ли се това за добра практика?
Активен

Не си мислете, че понеже Вие мислите правилно, всички мислят като Вас! Затова, когато има избори, идете и гласувайте, за да не сте изненадани после от резултата, и за да не твърди всяка партия, че тя е спечелила, а Б.Б. (С.С., ...) е загубил, а трети да управлява.  Наздраве!  [_]3

spec1a

  • Напреднали
  • *****
  • Публикации: 3963
    • Профил
Re: js хостнат другаде
« Отговор #1 -: Nov 14, 2022, 11:05 »
   Ами,не е добра практика.
Особено,като гледам това cloudflare.com ...

Можеш ли да контролираш къде какво има на чужди сървъри ?






П.С. Сега кашика като види cloudflare,ще почне да бълва огън и жупел.  ;D
« Последна редакция: Nov 14, 2022, 11:09 от spec1a »
Активен

go_fire

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 8825
  • Distribution: Дебиан Сид
  • Window Manager: ROX-Desktop / е17
  • кашик с гранатомет в танково поделение
    • Профил
    • WWW
Re: js хостнат другаде
« Отговор #2 -: Nov 14, 2022, 11:56 »
Кашика си е за кашика, Ласков си е за него. Всеки има различни потребности и виждания.

=*=

По въпроса.

Такава ли е практиката - ползване на скриптове от другаде и счита ли се това за добра практика?

Практика е. Добра ли е? Не е. Какво може да се направи? Ами въпросната машина да е виртуална или поне контейнер, че когато я праснат, а ще я праснат да не пострада нищо друго от инфраструктурата. Обаче, ако е контейнер, опастността не е премахната, просто се пестят ресурси.
Активен

В $por4e2 e истината  ;)

***

Aко даваха стипендия за най-глупави, щях да съм човека с най-много Mини Kупъри

***

Reborn since 1998 || 15.09.2007 totally М$ free && conscience clear

4096bits

  • Напреднали
  • *****
  • Публикации: 6324
    • Профил
Re: js хостнат другаде
« Отговор #3 -: Nov 14, 2022, 12:08 »
На теория, можеш навсякъде да ги сложиш.

Ако нямаш място да ги качиш локално на сървъра, не мисли, дали е добра практика. Върши работа. Освен това, отвори някоя уеб страница и погледни сорс кода ѝ. JS библиотеки се линкват отвсякъде. И не виждам нищо лошо в това. Особено, ако е от страницата на разработчика им. Така отпада и необходимостта ръчно да ги обновяваш и да следиш за това, ако се окаже, че има бъгове. Както си го направил със highcharts например - https://momentjs.com/downloads/moment.js в script тага и клиента си я дърпа от тях. Не виждам защо повдигаш въпроса за едното, а не за другото  ;)

Можеш да направиш и друго. Само че не мога да ти кажа как се прави, просто защото не зная. Да погледнеш, дали не можеш да кешираш библиотеката в кеша на браузъра на клиента.
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

spec1a

  • Напреднали
  • *****
  • Публикации: 3963
    • Профил
Re: js хостнат другаде
« Отговор #4 -: Nov 14, 2022, 12:21 »
   По добре да е контейнер (няколко контейнера) във виртуална машина.

   И някакво решение за възстановяване на данните във виртуалката в даден момент.
Брал съм ядове със всевъзможни докери-мокери,няма надеждно решение
за бекъп/възстановяване,това "docker commit ..." и "docker save ..." не
вършат достатъчно добра работа.
Активен

go_fire

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 8825
  • Distribution: Дебиан Сид
  • Window Manager: ROX-Desktop / е17
  • кашик с гранатомет в танково поделение
    • Профил
    • WWW
Re: js хостнат другаде
« Отговор #5 -: Nov 14, 2022, 12:22 »
Това става, но не в интернетския навигатор, а в кеширащо прокси, което му е по пътя.
Активен

В $por4e2 e истината  ;)

***

Aко даваха стипендия за най-глупави, щях да съм човека с най-много Mини Kупъри

***

Reborn since 1998 || 15.09.2007 totally М$ free && conscience clear

ray

  • Напреднали
  • *****
  • Публикации: 1456
    • Профил
Re: js хостнат другаде
« Отговор #6 -: Nov 14, 2022, 12:29 »
И според мен някакво прокси е най-добрия вариант.
Активен

laskov

  • Напреднали
  • *****
  • Публикации: 3166
    • Профил
Re: js хостнат другаде
« Отговор #7 -: Nov 14, 2022, 14:01 »
На теория, можеш навсякъде да ги сложиш.

Ако нямаш място да ги качиш локално на сървъра, не мисли, дали е добра практика. Върши работа. Освен това, отвори някоя уеб страница и погледни сорс кода ѝ. JS библиотеки се линкват отвсякъде. И не виждам нищо лошо в това. Особено, ако е от страницата на разработчика им. Така отпада и необходимостта ръчно да ги обновяваш и да следиш за това, ако се окаже, че има бъгове. Както си го направил със highcharts например - https://momentjs.com/downloads/moment.js в script тага и клиента си я дърпа от тях. Не виждам защо повдигаш въпроса за едното, а не за другото  ;)

Можеш да направиш и друго. Само че не мога да ти кажа как се прави, просто защото не зная. Да погледнеш, дали не можеш да кешираш библиотеката в кеша на браузъра на клиента.
На ESP32-то наистина няма много място. Но все пак, на него мога да поставя highcharts .

Аз съм пишман админ и също такъв програмист и съображенията ми са че:
* бъдеща промяна на скритовете, направена от авторите им, може да доведе до неработеща страница при мен;
* бъдеща промяна на скритовете, направена от злодеи, може да доведе до вреди на устройства, където е заредена страницата ми;
* чрез DNS гимнастики може да се направи пренасочване към фалшиви и вредоносни js

Не виждам как контейнери, виртуални машини и проксита могат да са полезни в случая.
Единственото решение, според мен, е да си сваля скриптовете на мой сървър и да се зареждат оттам. Въпросът е, дали тези със звездичките може да се случат, дали не съм параноик и дали няма нещо, за което не съм помислил. (е то винаги има такова :)  )
Активен

Не си мислете, че понеже Вие мислите правилно, всички мислят като Вас! Затова, когато има избори, идете и гласувайте, за да не сте изненадани после от резултата, и за да не твърди всяка партия, че тя е спечелила, а Б.Б. (С.С., ...) е загубил, а трети да управлява.  Наздраве!  [_]3

4096bits

  • Напреднали
  • *****
  • Публикации: 6324
    • Профил
Re: js хостнат другаде
« Отговор #8 -: Nov 14, 2022, 14:23 »
Ако са ти на облака, трябва да ти разбият акаунта там, за да ти подменят библиотеките.

Имаш и трети вариант. Всичко да е изцяло в облака. Това не е някакво голямо приложение, та едва ли ще те чарджат много, ако изобщо го направят. Амазон май под оперделен трафик и обем не ти взимаха нищо, но вече не съм много сигурен, че отдавна гледах.
А към сензора само заявки за данните да се изпращат или самото устройство да изпраща на нещо слушащо в облака и там да си генерираш и графика и всичко. Ако го правиш на сървъра, отпада ти и необходимостта от js библиотеки за тази цел. От сензора само взимаш данните и си ги държиш. При заявка, генерираш графиката и я пращаш.

Аз също съм пишман програмист и уеб дизайнер още по-малко ( всичко засега е за мои си неща и по малко съм помагал тук-там ), но това са ми  разсъжденията. Предполагам, че всичко зависи, колко заявки ще имаш към това и колко ще ти е трафика. Генерирането и изпращането на графиката ти вдига малко повече трафика заради изпращането на картинка, но ако държиш js библиотеките на сървъра и ги пращаш и двете при всяка заявка, не виждам, къде е разликата. Може да се окажат и с по-голям обем.

Но пък така се обезсмисля цялото съществуване на тази машинка. Това някакви килобайти ли има за памет? Много интересно ми става. За съжаление със С++ почти никакъв ме няма.
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

laskov

  • Напреднали
  • *****
  • Публикации: 3166
    • Профил
Re: js хостнат другаде
« Отговор #9 -: Nov 14, 2022, 15:03 »
Това някакви килобайти ли има за памет? Много интересно ми става. За съжаление със С++ почти никакъв ме няма.
4 MВ за файлова система, в която да поместиш index.html и каквото решиш. При нужда може да се постави microSD карта. Устройството е от Olimex: ESP32-EVB-EA-IND

Облаци не ползвам.
Активен

Не си мислете, че понеже Вие мислите правилно, всички мислят като Вас! Затова, когато има избори, идете и гласувайте, за да не сте изненадани после от резултата, и за да не твърди всяка партия, че тя е спечелила, а Б.Б. (С.С., ...) е загубил, а трети да управлява.  Наздраве!  [_]3

spec1a

  • Напреднали
  • *****
  • Публикации: 3963
    • Профил
Re: js хостнат другаде
« Отговор #10 -: Nov 14, 2022, 16:28 »
   Добре правиш,че не ползваш публични облаци.

   Преди известно време рещих да пробвам що е то AWS.
Една от възможностите беще някаква минимална конфигурация
с безплатен пробен период.Започнах да минавам през менютата и
по едно време ми поиска ... номер на кредитна карта !
Че и още свързани с това данни ...
   Естествено,пратих ги на путката си майна,затворих браузъра и
повече не съм се занимавал с това.
Активен

Naka

  • Напреднали
  • *****
  • Публикации: 3419
    • Профил
Re: js хостнат другаде
« Отговор #11 -: Nov 14, 2022, 16:43 »
Js се кешира подобно на html и css. Така, че все тая дали е някъде другаде. Печелиш, че няма да се грижиш дали се обновява библиотеката, някой друг ще се грижи за нея....Обаче ако объркат нещо при ъпдейтите или някой добър ден решат, че вече (компанията) я спира услугата или няма да я подържа ...губиш всичко.

Затова аз бих си ги изтелил локално на сървера скриптовете (или на някой мой подходящ адрес) и след като заработи всичко на 6 повече не бих ги барал. така поне се застраховаш от смяна на политикита на фирмата предоставяща скриптовете.

За външни скриптове...Само за несериозни неща -- като например Cookie Consent библиотеката (по EU закона за кукитата, дали сте съгласни), разните googъл скриптове, броячи и т.н. Т.е неща от които можеш да се откажеш във всеки един момент или да ги смениш с нещо друго.

« Последна редакция: Nov 14, 2022, 17:06 от Naka »
Активен

Perl - the only language that looks the same before and after encryption.

jet

  • Напреднали
  • *****
  • Публикации: 3473
  • Distribution: debian
  • Window Manager: kde
    • Профил
Re: js хостнат другаде
« Отговор #12 -: Nov 14, 2022, 19:17 »
С един wget си сваляш библиотеките при теб и работиш с локални копия. Ако понякое време решиш да ги обновиш от оригинала, правиш един Гит къмит на твоето копие и припокриеш с оригинала. Ако нещо се омаже или искаш да видиш какво точно е променяно - Гит отново.
Активен

..⢀⣴⠾⠻⢶⣦⠀
  ⣾⠁⢠⠒⠀⣿⡁
  ⢿⡄⠘⠷⠚⠋
  ⠈⠳⣄⠀⠀⠀⠀  Debian, the universal operating system.

4096bits

  • Напреднали
  • *****
  • Публикации: 6324
    • Профил
Re: js хостнат другаде
« Отговор #13 -: Nov 14, 2022, 20:03 »
Така и не се научих да го ползвам това Git.  :)
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

jet

  • Напреднали
  • *****
  • Публикации: 3473
  • Distribution: debian
  • Window Manager: kde
    • Профил
Re: js хостнат другаде
« Отговор #14 -: Nov 15, 2022, 00:01 »
Git го дадох само като пример, ползвай си което VCS знаеш.

Не е голяма философия:
1) Еднократно изпълняваш
git init
2) Всеки път като направиш промени:
git add -A
git commit -a -m "коментар"

И това е.
За да не се бъхтеш да гледаш старите весрии с команден ред, инсталираш някое ГУИ (https://git-scm.com/downloads/guis), то си чете скритата директория на Гит и ти покзва миналото с картинки и боички промените и дърветата какво си творил до момента.
Има и уеб фронт енд-и.

Като натрупаш история можеш да си играеш с бранчове или да връщаш стари версии (това е голямата сила на ГИТ). Съвременните ИДЕ-та си имат интеграция с Гит.
При един бранч можеш да създаваш нови/ триеш файлове, превключването към другия бранч пък обратно трие новите / създава изтритите файлове.
Като не ти трябва повече истори - затриваш .git директорията.
Като ти нарастне апетита, четеш за още други команди.

« Последна редакция: Nov 15, 2022, 00:05 от jet »
Активен

..⢀⣴⠾⠻⢶⣦⠀
  ⣾⠁⢠⠒⠀⣿⡁
  ⢿⡄⠘⠷⠚⠋
  ⠈⠳⣄⠀⠀⠀⠀  Debian, the universal operating system.