LifeAct
@LifeAct
Создаем и раскручиваем, не ставим на конвейер

Правилен ли алгоритм показа виджета?

Всем привет! Есть сайт афоризмов, хочу сделать сервис: пользователи генерируют код, вставляют у себя на сайте в нужном места (сайдбар) и там отображается тот или иной афоризм.

Вот что сделал:
Раз в сутки в определенную папку генерируются (random) 10 картинок с нанесенным текстом афоризмов.

Вот как думаю реализовать дальше:
Действие GetRandomCard возвращает представление с одной из 10 картинок (которые ранее сгенерировались). На действие вешается кеш на 1 час, таким образом у пользователя на его сайте обновляться афоризм будет раз в час. Код представляет собой обычный frame с действием.

Спецы по js скажут что скриптом это (отобразить на любом сайте, в котором вставлен скрипт одну из 10 картинок с удаленной папки (на сайте афоризмов)) раз два и сделал, но в скриптах не силен, посему так.

Буду рад за советы.
  • Вопрос задан
  • 155 просмотров
Решения вопроса 1
Denormalization
@Denormalization
Не нужно никакого JS
Просто картника <_img src="путь_к_сайту/getrandomimage"/>
Где getrandomimage - отдает рандомную картинку с сервера.

>хотя мне нужно больше чем картинка, еще оформление и ссылка на сайт источник
Ну так и дайте клиенту html:
<div>
<a href="http://site"><img src="http://site/rndimage" /></a>
</div>
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
alexey-m-ukolov
@alexey-m-ukolov Куратор тега Веб-разработка
Большой плюс использования js - то, что сайт клиента не ждет, пока загрузится картинка с вашего сервера, который может вообще умереть.
Я бы сделал виджет, который отдавал бы клиентам через <script src="site.com/widget.js" async></script>, а внутри виджета уже генерировал адрес картинки и вставлял ее в нужное место. Но если уровень знания js недостаточный, то это, конечно, overkill.
Ответ написан
Комментировать
Отдаю предпочтение ответу Алексей Уколов
Как вариант для подстраховки от недоступности сервера (а такое в жизни нередко бывает), использовать сервис CDN для отдачи JS виджета, такой как CloudFlare. В виджете могут указываться параметры для генерации картинки и прочего контента.
<script src="cdn.site.com/widget.js" async></script>
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы