@goshva

Каков принцип работы укоротителя ссылок?

Требуется написать свой укоротитель ссылок подобный goo.gl,

Ссылка имеет вот такой вид:
https://boggle.space/url
?edge=10
&letters="т","о","с","т","е","р","г","р","т","н","о","в","ь","ю","с","ш","о","т","о","а","з","н","о","н","ы","м","к","л","ш","и","л","л","р","г","м","н","я","н","н","а","у","о","о","г","н","е","л","е","о","б","д","т","е","и","п","о","с","т","о","о","с","и","в","л","г","ж","к","и","е","н","п","ц","к","и","о","м","л","л","а","а","а","й","с","о","а","а","у","а","а","л","д","х","а","ь","б","ж","у","в","е","о"]
&userwordsids=[[0,1,2,3],[0,1,2,3,4,5]]

Прошу обрисовать принципиальную схему работы укоротителя ссылок
(API рассматривал - не подходит нужен именно свой).
Так же хотелось бы узнать какие инструменты предпочтительней использовать в связке с nodejs для хранения соответствующих ссылок.
Благодарю.
  • Вопрос задан
  • 299 просмотров
Пригласить эксперта
Ответы на вопрос 3
Denormalization
@Denormalization
Все просто:
- Генерируем уникальный ID для ссылки
- Сохраняем этот ID в базе вместе с ссылкой
- Когда кто-то запрашивает http://вашсайт.ру/[ID] достаем из базы ссылку которая привязанна к этом ID и редиректим.
Ответ написан
Комментировать
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
Приципиальная схема:
  1. Заводите таблицу urls с двумя колонками - short и full.
  2. Генерируете короткие адреса по любому алгоритму. Да хоть ID строки используйте, хоть таймстамп, хоть UUID - что угодно. Вряд ли для ваших целей критично, поместится ли ссылка в Твит.
  3. Всё.
Ответ написан
Комментировать
petermzg
@petermzg
Самый лучший программист
Берете урл. По нему md5 и затем base64
Записываете в базу получившееся значение и url.
Итог: http://<ваш домен>/<получившийся base64>

Если идет обращение, то по части ищете в базе и возвращаете редирект на url сохраненый в базе
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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