1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/barat-ohurlshortener

Клонировать/Скачать
API.md 4.6 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 07:58 e855323

ohUrlShortener HTTP API

/api 接口权限说明

Все интерфейсы /api/* требуют проверки прав доступа с помощью Bearer Token, то есть каждый запрос Header должен содержать:

 Authorization: Bearer {sha256_of_password}

где sha256_of_password зашифрован в соответствии с алгоритмом storage/users_storage.go PasswordBase58Hash().

1. Создание короткой ссылки POST /api/url

Параметры:

  1. dest_url — целевой URL, обязательный;
  2. memo — дополнительная информация, необязательная.

Пример запроса:

curl --request POST \
  --url http://localhost:9092/api/url \
  --header 'Authorization: Bearer EZ2zQjC3fqbkvtggy9p2YaJiLwx1kKPTJxvqVzowtx6t' \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data dest_url=http://localhost:9092/admin/dashboard \
  --data memo=dashboard

Ответ:

{
	"code": 200,
	"status": true,
	"message": "success",
	"result": {
		"short_url": "http://localhost:9091/BUUtpbGp"
	},
	"date": "2022-04-10T21:31:29.36559+08:00"
}

2. Включение и отключение коротких ссылок PUT /api/url/:url/change_state

Параметры:

  1. url path — короткая ссылка, обязательная;
  2. enable — отключить, если false, включить, если true.

Пример запроса:

curl --request PUT \
  --url http://localhost:9092/api/url/33R5QUtD/change_state \
  --header 'Authorization: Bearer EZ2zQjC3fqbkvtggy9p2YaJiLwx1cKPTJxvqVzowtx6t' \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data enable=false

Ответ:

{
	"code": 200,
	"status": true,
	"message": "success",
	"result": true,
	"date": "2022-04-10T21:31:25.7744402+08:00"
}

3. Получение статистических данных по коротким ссылкам GET /api/url/:url

Параметр:

  1. url path — короткая ссылка, обязательная.

Пример запроса:

curl --request GET \
  --url http://localhost:9092/api/url/33R5QUtD \
  --header 'Authorization: Bearer EZ2zQjC3fqbkvtggy9p2YaJiLwx1kKPTJxvqVzowtx6t' \
  --header 'Content-Type: application/x-www-form-urlencoded'

Ответ:

{
	"code": 200,
	"status": true,
	"message": "success",
	"result": {
		"short_url": "33R5QUtD",
		"today_count": 3,
		"yesterday_count": 0,
		"last_7_days_count": 0,
		"monthly_count": 3,
		"total_count": 3,
		"d_today_count": 1,
		"d_yesterday_count": 0,
		"d_last_7_days_count": 0,
		"d_monthly_count": 1,
		"d_total_count": 1
	},
	"date": "2022-04-10T21:31:22.059596+08:00"
}

4. Создание администратора POST /api/account

Параметры:

  1. account — учётная запись администратора, обязательная;
  2. password — пароль администратора, обязательный, не менее 8 символов.

Пример запроса:

curl --request POST \
  --url http://localhost:9092/api/account \
  --header 'Authorization: Bearer EZ2zQjC3fqbkvtggy9p2YaJiLwx1kKPTJxvqVzowtx6t' \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data account=hello1 \
  --data password=12345678

Ответ:

{
	"code": 200,
	"status": true,
	"message": "success",
	"result": null,
	"date": "2022-04-10T21:31:39.7353132+08:00"
}

5. Изменение пароля администратора PUT /api/account/:account/update

Параметры:

  1. account path — учётная запись администратора, обязательная;
  2. password — новый пароль администратора, обязательный, не менее 8 символов.

Пример запроса:

curl --request PUT \
  --url http://localhost:9092/api/account/hello/update \
  --header 'Authorization: Bearer EZ2zQjC3fqbkvtggy9p2YaJiLwx1kKPTJxvqVzowtx6t' \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data password=world123

Ответ:

{
	"code": 200,
	"status": true,
	"message": "success",
	"result": null,
	"date": "2022-04-10T21:31:32.5880538+08:00"
}

6. Удаление короткой ссылки DELETE /api/url/:url

Параметр:

  1. url path — адрес удаляемой короткой ссылки.

(Здесь пример запроса опущен.)

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/barat-ohurlshortener.git
git@api.gitlife.ru:oschina-mirror/barat-ohurlshortener.git
oschina-mirror
barat-ohurlshortener
barat-ohurlshortener
main