Данный сервер возвращает клиенту короткую ссылку на предоставленный ресурс. При переходе по короткой ссылке происходит перенаправление на исходный URL адрес. Поддерживает сжатие gzip.
- "/" принимает исходный URL в теле post запроса, и возвращает короткую ссылку в ответе.
- "/api/shorten" принимает json
{"url":"https://longurlexample.com/"}
и возвращает (пример){ "result": "http://example.com/1EVO" }
git clone # клонируем репозиторий
go build .\cmd\shortener\main.go # установите go если потребуется https://go.dev/doc/install
.\main.exe -a localhost:8080 -b http://localhost:8080 -f "file.storage"
Все параметры являются не обязательными. По умолчанию сервер запускается на localhost:8080
Через флаги запуска:
- -a адрес сервера
- -b базовый адрес для коротких ссылок
- -f файл хранилища в который программа сохраняет данные по коротким и исходным ссылкам
Через переменные окружения:
- SERVER_ADDRESS - адрес поднимаемого сервера, например "localhost:8080"
- BASE_URL - базовый адрес для коротких ссылок, например "http://localhost:8080"
- FILE_STORAGE_PATH - путь к файлу с хранилищем
Приоритет конфигурации отдается переменным окружения при их наличии.
При отсутствии пути к файлу хранилища программа хранит все данные только в оперативной памяти. Пожалуйста используйте этот вариант только для тестирования, после завершения программы данные не сохраняться.