Skip to content

Service, that helps to create short links from the long ones.

Notifications You must be signed in to change notification settings

Invictus-7/yacut

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Сервис Yacut

###Автор - Кирилл Резник

Описание

Yacut - это сервис укорачивания ссылок, который ассоциирует длинную ссылку с короткой. Короткую ссылку можно "привязать" к длинной двумя путями - либо придумать и ввести ее самому, либо сгенерировать автоматически при помощи сервиса.

Короткая ссылка позволяет переходить по исходному адресу.

Данный проект также поддерживает взаимодействие по API

(полная спецификация API доступна в репозитории - файл openapi.yml)

В проекте использовались следующие технологии:

Установка проекта

  1. Склонируйте репозиторий:
git clone git@github.com:Invictus-7/yacut.git
  1. Активируйте venv и установите зависимости:
python -m venv venv
venv/scripts/activate
pip install -r requirements.txt
  1. Создайте в корневой директории файл .env со следующим константами:
FLASK_APP=yacut
FLASK_ENV=development или production
DATABASE_URI=sqlite:///db.sqlite3
SECRET_KEY=<ваш_секретный_ключ>
  1. Теперь проект можно запускать.

Управление проектом:

Для локального запуска выполните команду:

flask run

Сервис будет запущен и доступен по следующим адресам:

  • http://localhost/ - главная страница сервиса;

    • Если не заполнить поле для короткой ссылки, она будет сгенерирована автоматически.
    • Короткая ссылка должна быть не длиннее 16 символов (цифры и латинские буквы в любом регистре).

##Работа с API

  • http://localhost/api/id/ - эндпоинт для POST-запросов;

    • Схема POST-запроса:

      {
      "url": "string",
      "custom_id": "string"
      }

      (string - необязательное поле)

    • Схема ответа на POST-запрос:

      {
      "url": "string",
      "short_link": "string"
      }
  • http://localhost/api/id/short_id/ - эндпоинт для GET-запросов.

    В данном эндпоинте вместо <short_id> нужно прописать полученную ранее короткую ссылку.

    • Схема ответа на GET-запрос:
      {
      "url": "string"
      }

About

Service, that helps to create short links from the long ones.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published