jinv.ru

Генерация коротких URL адресов

01 March 2020

Данная статья описывает мой учебный проект на FreeCodeCamp.

Чтобы понять, для чего нужен этот микросервис прочтите статью Сокращение URL на Википедии, а также прочтите эту статью.

Задание

Нужно создать JavaScript приложение полного цикла, которое функционально похоже на это: https://thread-paper.glitch.me/.

Работа над этим проектом будет включать в себя написание кода на Glitch. Чтобы приступить к написанию кода запустите проект по этой ссылке или клонируйте этот репозиторий с GitHub!

  1. Можно отправить URL-адрес в [project_url]/api/shorturl/new, и получить ответ в виде сокращенного URL-адреса в формате JSON, например: {"original_url":"www.google.com", "short_url": 1}
  2. Если передать недопустимый URL-адрес, который не соответствует формату http(s)://www.example.com(/more/routes), то ответ в JSON будет содержать ошибку: {"error":"invalid URL"}. Подсказка: чтобы убедиться, что отправленный url-адрес указывает на допустимый сайт, можно использовать функцию dns.lookup(host, cb) от модуля ядра dns.
  3. Когда посещается сокращенный URL-адрес, происходит перенаправление на оригинальную ссылку.

Пример Создания: POST [project_url]/api/shorturl/new - body (urlencoded) : url=https://www.google.com

Использование: [thisprojecturl]/api/shorturl/3

Вы будете перенаправлены на: https://www.freecodecamp.org/forum/

После завершения этого проекта нужно скопировать публичный url главной страницы приложения Glitch на эту страницу. По желанию можно написать свой проект на другой платформе, но он должен быть публично виден для тестирования.

Решение

https://url-shortener-injashkin.glitch.me https://github.com/injashkin/url-shortener.git


Автор injashkin.