170 похожих чатов

Вопрос по поводу формирования slug для товара - что происходит,

когда пользователь переходит по такой сформированной ссылке?

Какова задача бэкенда, а какова фронта?

Мне chatgpt отвечает, что в таком случае, обычно для каждого slug'а формируются отдельные html странички, которые потом отдаются

Это правда? Насколько оптимален такой подход? Присутствуют ли какие-то более оптимальные (допустим без формирования статики на каждый чих) альтернативы?

23 ответов

22 просмотра

Обычно ничего там не сохраняется. По слагу определяется на какой товар запрос. Далее из базы считываются данные товара и: 1) Либо формируется динамический HTML и возвращается в браузер. 2) Либо формируется JSON с данными товара и возвращается по API, где эти данные рендерит фронт-приложение.

А4 Одноногое- Автор вопроса
Andrew Popov
Обычно ничего там не сохраняется. По слагу опреде...

Понял, спасибо! Интересует второй вариант Допустим, nginx отдаёт статику, которая потом наполняться с помощью API. А как более детально это происходит? Вроде бы простой сценарий, но в голове общая картинка не складывается

А4 Одноногое
Понял, спасибо! Интересует второй вариант Допусти...

Не очень понимаю что имеете ввиду. Какую статику nginx отдаёт и причем тут он.

А4 Одноногое- Автор вопроса
Andrew Popov
Не очень понимаю что имеете ввиду. Какую статику n...

Не при чём) Просто хочется чётко разделить задачи фронта и бэкенда в этой ситуации (скорее всего, меня сбивают с толку короткие ссылки с редиректом, но это другое) Насколько я понял, шаги следующие: 1) При переходе по ссылке веб-сервер отдаёт html 2) На фронте извлекают slug из адреса, а далее просят api вернуть товар по этому slug

А4 Одноногое
Не при чём) Просто хочется чётко разделить задачи ...

Опишите вашу задачу более конкретно. Мы вообще об одном говорим?

А4 Одноногое- Автор вопроса
Andrew Popov
Я не очень понял про первый шаг.

Допустим, у нас есть веб-сервер, занимающийся раздачей html файлов (этим ведь может nginx заниматься?) Что происходит при переходе по короткой ссылке на товар?

А4 Одноногое
Допустим, у нас есть веб-сервер, занимающийся разд...

Если вы пишите на Го приложение, то причем тут nginx? Максимум что он может - это раздавать статику. Картинки, css. HTML будет генерироваться беком.

А4 Одноногое- Автор вопроса
Andrew Popov
Если вы пишите на Го приложение, то причем тут ngi...

Мне почему-то всегда казалось, что одной из задач nginx является раздача html

А4 Одноногое
Допустим, у нас есть веб-сервер, занимающийся разд...

загружается фронтенд, который шлёт запрос на апи, чтобы получить данные оп товару --- либо этот запрос сразу на бекенд который возвращает сразу заполненную html страницу --- в большинстве приложений первый вариант

"Мне chatgpt отвечает" - авторитетно (нет) По slug на бэке из базы данных извлекается запись (с нужными столбцами из одной таблицы или нескольких), после чего рендерится шаблон страницы и отдаётся обратно. Либо же формируется JSON и отдаётся обратно, если речь про API какое-то

nginx (или друга программа для этого) отдаёт файлик с сервера

А4 Одноногое- Автор вопроса
Александр Костюченко
nginx (или друга программа для этого) отдаёт файли...

Мне немного выше сказали, что nginx этим не занимается

А4 Одноногое
Мне немного выше сказали, что nginx этим не занима...

Так мы говорили про HMTL страницы, а не каркаса фронтенда. Кроме того, Го-вебсервер может вернуть это по основному роуту приложения. Из своих шаблонов.

А4 Одноногое
Мне немного выше сказали, что nginx этим не занима...

Распространенное решение в nginx на слеш / отдается билд фронтенд приложения, оно кешируется в браузере

А4 Одноногое
Мне почему-то всегда казалось, что одной из задач ...

ну так-то nginx не нужен, если вам просто статику раздать нужно, и эта статика - js в основном, который хорошо кешируется

А4 Одноногое
https://t.me/gogolang/899899

в общем браузер шлёт запрос - он попадает на сервер - где в ответ получает фронтенл html страницу и рендерит её после рендера запускаются скрипты в которых идут запросы на сервер(бекенд, api) который отдаёт уже конкретные данные после эти данные фронтенд (html страница) с помощью js вставляет в html блоки эти данные это всё грубо говоря

А4 Одноногое- Автор вопроса
Александр Костюченко
в общем браузер шлёт запрос - он попадает на серв...

Угу. И когда мы переходим по "слагу", то есть короткой ссылке, какова задача фронта, а какова бэка в этом сценарии? (изначальный вопрос, с которым я пришёл 🙃) Для наполнения страницы, фронт берёт из адреса slug, а api возвращает товар по slug'у, правильно понимаю?

А4 Одноногое
Угу. И когда мы переходим по "слагу", то есть коро...

бек - возвращает данные в формате json фронте - эти данные показывает

Похожие вопросы

Обсуждают сегодня

здравствуйте. совершаю вот такую вещь: strcpy(line, (char)current_number); где current number — неподписанный шорт, line — массив чаров. ругань следующая: main.c:29:30: error...
Roberto's Ширгозиев
13
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
Можно попросить небольшое ревью кода? Тут немнога, я ничего интереснее не придумал, чем написать аналог tree в качестве практики с cmake. https://github.com/hrimov/tree-unix/...
Andrew Hrimov
11
Всем привет. Ребят подскажите пожалуйста. Вопрос по дизасемблировани. Начну с начала. У меня есть скомпилированная программа на ГО (я разработчик) - в ней есть защита лицензии...
Zloy
11
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
кто тебе сказал, что она угроблена? многие только начинают жизнь, после увольнения из Гугла, Майкрософта, Оракла,...
Alex Kom
9
В альтернативе у нас сидеть горбатиться на дядю в галерах, пока не помрешь или пока тебя не заменят более молодым сотрудником, который готов гребсти в два раза дешевле. Вот и ...
Кабан Кабанов
7
все привет. подскажите может кто сталкивался evo 3 если в formlister в параметр formTpl указать имя чанка а не через @CODE то в указанном чанке не парсятся плейсхолдеры [**]? ...
Иван Тарасевич
6
Карта сайта