Расшифровка короткой ссылки
Принимаемые параметры
Объект ссылки
{
"url": String,
"time": Float,
"redirect": Boolean,
"error": *String,
"response": {
"http": {
"code": Int,
"message": String,
"remote_addr": String
},
"headers": Array
},
}
Ответ
/api/link.check?url=https://bit.ly/3q3wZnl
{
"redirects": [
{
"url": "https://bit.ly/3q3wZnl",
"time": 0.082885,
"redirect": true,
"response": {
"http": {
"code": 301,
"message": "HTTP/1.1 301 Moved Permanently",
"remote_addr": "127.0.0.1:80"
},
"headers": [
"Server: nginx",
"Date: Thu, 07 Jan 2021 23:01:13 GMT",
"Content-Type: text/html; charset=utf-8",
"Content-Length: 106",
"Location: https://vimetop.ru/",
]
}
}, {
"url": "https://vimetop.ru/",
"time": 0.057379,
"redirect": false,
"response": {
"http": {
"code": 200,
"message": "HTTP/1.1 200 OK",
"remote_addr": "127.0.0.1:443"
},
"headers": [
"Server: nginx",
"Date: Thu, 07 Jan 2021 23:08:56 GMT",
"Content-Type: text/html; charset=UTF-8",
"Content-Length: 24617",
]
}
}
],
"finish": {
"url": "https://vimetop.ru/",
"time": 0.057379,
"redirect": false,
"response": {
"http": {
"code": 200,
"message": "HTTP/1.1 200 OK",
"remote_addr": "127.0.0.1:443"
},
"headers": [
"Server: nginx",
"Date: Thu, 07 Jan 2021 23:08:56 GMT",
"Content-Type: text/html; charset=UTF-8",
"Content-Length: 24617",
]
}
}
}
/api/link.check?url=https://bit.ly/3q3wZnl&short
{
"links": [
"https://bit.ly/3q3wZnl",
"https://vimetop.ru/"
]
}
Проксирование картинки
Принимаемые параметры
Стоит отметить, что в заголовок ответа добавляется параметр Cache-Control: public, max-age=60
, что означает, что картинка закэшируется у клиента на 60 секунд
Параметр url
лучше передавать в кодированном виде
Если в процессе появляется ошибка, возвращается JSON такой структуры:
{
"error": {
"code": Int,
"message": String
}
}