Skip to content

self-destruction/UrlShorter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Url Shorter

Xsolla Summer School '17 - Final Assignment.

Спроектировано и реализовано RESTful API для сокращателя ссылок. Сокращатель ссылок - сервис, который позволяет пользователю создавать более короткие адреса, которые лучше передавать другим пользователям и собирает статистику по совершенным переходам. Примеры таких сервисов: https://goo.gl/, https://bitly.com/. Cтек - PHP, MySQL. Используется HTTP Basic Authorization, где параметром будет пара логин-пароль в виде base64. Все POST-запросы должны быть в формате JSON. Все ответы также возвращаются в формате JSON.

Описание запросов:

POST /api/v1/users - регистрация нового пользователя (аутентификация не требуется). Пример содержимого body: {"login":"test", "password":"test"}

GET /api/v1/users/me - получение информации о текущем аутентифицированном пользователе (логин, дата регистрации пользователя, дата последней аутентификации, общее количество ссылок)

POST /api/v1/users/me/shorten_urls - создание новой короткой ссылки. Пример содержимого body: {"url":"https://ya.ru/"}

GET /api/v1/users/me/shorten_urls - получение всех созданных коротких ссылок пользователя (короткий хэш, полная ссылка, количество переходов)

GET /api/v1/users/me/shorten_urls/{hash} - получение информации о конкретной короткой ссылке пользователя (короткий хэш, полная ссылка, количество переходов, среднее число переходов за сутки (информация собирается от даты самого раннего просмотра и самого позднего), дата создания ссылки)

DELETE /api/v1/users/me/shorten_urls/{hash}- удаление короткой ссылки пользователя

GET /api/v1/users/me/shorten_urls/{hash}/[days,hours,min]?from_date=0000-00-00&to_date=0000-00-00 - получение временного графика количества переходов с группировкой по дням, часам, минутам (если параметры from_date и to_date не заданы, выводится информация за последние 7 суток)

GET /api/v1/users/me/shorten_urls/{hash}/referers - получение топа из 20 сайтов иcточников переходов (если источник перехода не был обнаружен, он не учитывается в топе)

GET /api/v1/shorten_urls/{hash} - переход по ссылке

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages