-
Notifications
You must be signed in to change notification settings - Fork 0
Home
-
Берем
clientId:clientSecret
шифруем это ипользую алгоритмbase64
Как это сделать в js:
var headerKey = btoa('web_app:secret_key');
-
Полученный
headerKey
нужно добавить в заголовок запросаkey
=Authorization
value
=headerKey
-
Затем нужно отправить следующий запрос
POST
localhost/oauth/token?username=yura@gmail.com&password=1234&scope=read write&grant_type=password
Получим следующий ответ:
{
"access_token": "b67087dd-308c-451c-837d-4441a13e05f5",
"token_type": "bearer",
"refresh_token": "1fcb1b96-b224-494f-9670-ca45710eb15d",
"expires_in": 43199,
"scope": "read write",
"account_id": "9bbf6fb8-14b1-4f30-9080-c75b5772d161"
}
Для выполнения запросов к api, к которым нужна авторизация, мы должны использовать access_token
. Для этого нужно:
-
Сначала получить
access_token
(как это делать см. здесь) -
Установить заголовок запроса
key
=Authorization
value
=Bearer access_token
-
Выполнить запрос и радоваться
Передаем параметры в JSON
:
{
"email":"yuriy.samsonov96@gmail.com", // required
"login":"academeg", // required
"password":"1234", // required
"name":"Юрий",
"surname":"Самсонов"
}
доступно: всем
Передаем параметры в JSON
:
{
"login":"academeg", // required
"name":"Юрий",
"surname":"Самсонов"
}
Можем редактировать только login
, name
, surname
, если они будут пустыми, то они затрутся в базе.
Пользователь может редактировать только свой аккаунт
доступно: только авторизованному пользователю
Пользователь может удалить только себя, либо админ может удалить кого угодно
доступно: только авторизованному пользователю
доступно: всем
page
необязательный параметр, изначально равен 0
limit
необязательный параметр, изначально равен 20
доступно: всем
Параметры:
image
передаем изображение
доступно: только авторизованному пользователю
доступно: только авторизованному пользователю
доступно: всем
name
thumbnailPath или originalPath
доступно: всем
Передаем параметры в JSON
:
{
"value": "фотки" // required
}
доступно: только авторизованному пользователю
Передаем параметры в JSON
:
{
"value": "фотки" // required
}
доступно: только админу или модератору
доступно: только админу или модератору
доступно: всем
page
необязательный параметр, изначально равен 0
limit
необязательный параметр, изначально равен 20
доступно: всем
Передаем параметры в JSON
:
{
"title":"Тайтл", // required
"text":"Текст", // required
"status":"DRAFT", // если пришло пустое, то статься будет опубликована
"tags": [
{
"id":"fa627258-2b24-4a2e-b437-f2ec6977c95b" // required
}
],
"images": [
{
"id":"82ffdb43-dc83-449a-9f11-cabefb377cb2" // required
}
]
}
Поле status
имеет следующие состояния:
-
PUBLISHED
- опубликована (видна всем) -
DRAFT
- черновик (видит только автор) -
LOCKED
- заблокирована (видит автор, админ, модератор); это состояние устанавливается только админом/модератором
доступно: только авторизованным пользователям
Передаем параметры в JSON
:
{
"title":"Тайтл", // required
"text":"Текст", // required
"status":"PUBLISHED", // если пришло пустое, то статься будет опубликована
"tags": [
{
"id":"fa627258-2b24-4a2e-b437-f2ec6977c95b" // required
}
],
"images": [
{
"id":"82ffdb43-dc83-449a-9f11-cabefb377cb2" // required
}
]
}
images
при передачи пустого массива, изображения не удалятся, если передается не пустой массив, то эти изображения добавятся к статье
tags
если будет пустой массив, то теги удалятся
доступно: только автору статьи
доступно: только автору статьи, модератору или админу
доступно: всем
page
необязательный параметр, изначально равен 0
limit
необязательный параметр, изначально равен 20
доступно: всем
page
необязательный параметр, изначально равен 0
limit
необязательный параметр, изначально равен 20
доступно: всем
доступно: только админу или модератору
доступно: только админу или модератору
Параметры:
image
передаем изображение
доступно: только авторизованному пользователю
доступно: только авторизованному пользователю
доступно: всем
name
thumbnailPath или originalPath
доступно: всем