@pushwoosh/http-client 1.0.2 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{lib → dist}/http-client.d.ts +70 -70
- package/{lib → dist}/http-client.errors.d.ts +28 -28
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/package.json +11 -8
- package/lib/index.js +0 -2
- package/lib/index.js.map +0 -1
- /package/{lib → dist}/http-client.types.d.ts +0 -0
- /package/{lib → dist}/index.d.ts +0 -0
|
@@ -1,169 +1,169 @@
|
|
|
1
1
|
import { Body, Config, CookieOptions, DeleteOptions, GetOptions, Introspect, Method, Options, Params, PatchOptions, PostOptions, PutOptions, Query, Response, Result } from './http-client.types';
|
|
2
2
|
export declare class HttpClient<I extends Introspect = Introspect> {
|
|
3
3
|
/**
|
|
4
|
-
* Имя куки в которой будет сохранена случайная строка для проверки ответа
|
|
4
|
+
* Имя куки в которой будет сохранена случайная строка для проверки ответа авторизации.
|
|
5
5
|
*/
|
|
6
6
|
private static STORIED_AUTHORIZATION_STATE_COOKIE_NAME;
|
|
7
7
|
/**
|
|
8
|
-
* Имя куки в которой будет сохранен текущий адрес
|
|
8
|
+
* Имя куки в которой будет сохранен текущий адрес страницы.
|
|
9
9
|
*/
|
|
10
10
|
private static STORIED_URL_COOKIE_NAME;
|
|
11
11
|
/**
|
|
12
|
-
* Параметры
|
|
12
|
+
* Параметры конфигурации.
|
|
13
13
|
*/
|
|
14
14
|
private readonly config;
|
|
15
15
|
/**
|
|
16
|
-
* Параметры
|
|
16
|
+
* Параметры куки.
|
|
17
17
|
*/
|
|
18
18
|
private readonly cookieOptions;
|
|
19
19
|
/**
|
|
20
|
-
* Токен
|
|
20
|
+
* Токен доступа.
|
|
21
21
|
*/
|
|
22
22
|
private accessToken;
|
|
23
23
|
/**
|
|
24
|
-
* Токен
|
|
24
|
+
* Токен обновления.
|
|
25
25
|
*/
|
|
26
26
|
private refreshToken;
|
|
27
27
|
/**
|
|
28
|
-
* Происходит ли сейчас обновление
|
|
28
|
+
* Происходит ли сейчас обновление токенов.
|
|
29
29
|
*/
|
|
30
30
|
private isRefreshing;
|
|
31
31
|
/**
|
|
32
|
-
* Был ли установлен токен доступа
|
|
32
|
+
* Был ли установлен токен доступа вручную.
|
|
33
33
|
*/
|
|
34
34
|
private isAccessTokenSetManual;
|
|
35
35
|
constructor(config: Config, cookieOptions?: CookieOptions);
|
|
36
36
|
/**
|
|
37
|
-
* Разобрать ответ от
|
|
37
|
+
* Разобрать ответ от сервера, и вернуть результат выполнения запроса.
|
|
38
38
|
*
|
|
39
|
-
* @param { Response<*> } response - ответ от сервера в формате Axios
|
|
39
|
+
* @param { Response<*> } response - ответ от сервера в формате Axios.
|
|
40
40
|
*/
|
|
41
41
|
static parseResponse<R extends Result>(response: Response<R>): R;
|
|
42
42
|
/**
|
|
43
|
-
* Проверить наличие
|
|
43
|
+
* Проверить наличие авторизации.
|
|
44
44
|
*/
|
|
45
45
|
private guardAuthorization;
|
|
46
46
|
/**
|
|
47
|
-
* Обновить
|
|
48
|
-
* Для более подробной информации: RFC 6749 https://www.rfc-editor.org/rfc/rfc6749.html
|
|
47
|
+
* Обновить токены.
|
|
48
|
+
* Для более подробной информации: RFC 6749 https://www.rfc-editor.org/rfc/rfc6749.html.
|
|
49
49
|
*
|
|
50
|
-
* @param { UpdateTokensPairQuery } query - параметры запроса для обновления
|
|
50
|
+
* @param { UpdateTokensPairQuery } query - параметры запроса для обновления токенов.
|
|
51
51
|
*/
|
|
52
52
|
private updateTokensPair;
|
|
53
53
|
/**
|
|
54
|
-
* Обновить токены с помощью кода
|
|
55
|
-
* Для более подробной информации: RFC 6749 https://www.rfc-editor.org/rfc/rfc6749.html#section-4.1.3
|
|
54
|
+
* Обновить токены с помощью кода авторизации.
|
|
55
|
+
* Для более подробной информации: RFC 6749 https://www.rfc-editor.org/rfc/rfc6749.html#section-4.1.3.
|
|
56
56
|
*
|
|
57
|
-
* @param { string } authorizationCode - код авторизации, полученный от сервера
|
|
57
|
+
* @param { string } authorizationCode - код авторизации, полученный от сервера авторизации.
|
|
58
58
|
*/
|
|
59
59
|
private updateTokensPairByAuthorizationCode;
|
|
60
60
|
/**
|
|
61
|
-
* Обновить токены с помощью токена
|
|
62
|
-
* Для более подробной информации: RFC 6749 https://www.rfc-editor.org/rfc/rfc6749.html#section-6
|
|
61
|
+
* Обновить токены с помощью токена обновления.
|
|
62
|
+
* Для более подробной информации: RFC 6749 https://www.rfc-editor.org/rfc/rfc6749.html#section-6.
|
|
63
63
|
*
|
|
64
|
-
* @param { string } refreshToken - токен обновления, полученный от сервера
|
|
65
|
-
* @param { Introspect } introspect - содержимое токена
|
|
64
|
+
* @param { string } refreshToken - токен обновления, полученный от сервера авторизации.
|
|
65
|
+
* @param { Introspect } introspect - содержимое токена доступа.
|
|
66
66
|
*/
|
|
67
67
|
private updateTokensPairByRefreshToken;
|
|
68
68
|
/**
|
|
69
|
-
* Инициализировать модуль, если передан authorizationCode и authorizationState будет выполнена попытка обновить
|
|
69
|
+
* Инициализировать модуль, если передан authorizationCode и authorizationState будет выполнена попытка обновить токены.
|
|
70
70
|
*
|
|
71
|
-
* @param { string } authorizationCode - код авторизации, полученный от сервера
|
|
72
|
-
* @param { string } authorizationState - уникальная строка, переданная клиентом серверу при авторизации, полученная от сервера
|
|
71
|
+
* @param { string } authorizationCode - код авторизации, полученный от сервера авторизации.
|
|
72
|
+
* @param { string } authorizationState - уникальная строка, переданная клиентом серверу при авторизации, полученная от сервера авторизации.
|
|
73
73
|
*/
|
|
74
74
|
initialize(authorizationCode: string | null, authorizationState: string | null): Promise<I | null>;
|
|
75
75
|
/**
|
|
76
|
-
*
|
|
76
|
+
* Начать сессию.
|
|
77
77
|
*/
|
|
78
78
|
login(): Promise<void>;
|
|
79
79
|
/**
|
|
80
|
-
* Завершить
|
|
80
|
+
* Завершить сессию.
|
|
81
81
|
*/
|
|
82
82
|
logout(): Promise<void>;
|
|
83
83
|
/**
|
|
84
|
-
* Временный костыль, чтобы установить токен доступа из
|
|
84
|
+
* Временный костыль, чтобы установить токен доступа из сессии.
|
|
85
85
|
*/
|
|
86
86
|
setAccessToken(accessToken: string): void;
|
|
87
87
|
/**
|
|
88
|
-
* Получить токен доступа, если время жизни токена закончилось, будет осуществлена попытка обновить
|
|
88
|
+
* Получить токен доступа, если время жизни токена закончилось, будет осуществлена попытка обновить токен.
|
|
89
89
|
*/
|
|
90
90
|
getAccessToken(): Promise<string>;
|
|
91
91
|
/**
|
|
92
|
-
* Выполнить запрос на
|
|
92
|
+
* Выполнить запрос на сервер.
|
|
93
93
|
*
|
|
94
94
|
* Дженерик:
|
|
95
|
-
* Method - тип
|
|
96
|
-
* Placeholders - параметры, которые будут подставлены в шаблон
|
|
97
|
-
* Query - параметры, которые будут преобразованы в строку
|
|
98
|
-
* Body - тело запроса (never для GET)
|
|
99
|
-
* Result - ожидаемый результат выполнения
|
|
95
|
+
* Method - тип запроса.
|
|
96
|
+
* Placeholders - параметры, которые будут подставлены в шаблон пути.
|
|
97
|
+
* Query - параметры, которые будут преобразованы в строку запроса.
|
|
98
|
+
* Body - тело запроса (never для GET).
|
|
99
|
+
* Result - ожидаемый результат выполнения запроса.
|
|
100
100
|
*
|
|
101
|
-
* @param { string } url - адрес
|
|
102
|
-
* @param { Options<Method, Params, Query, Body> } options - параметры
|
|
101
|
+
* @param { string } url - адрес запроса.
|
|
102
|
+
* @param { Options<Method, Params, Query, Body> } options - параметры запроса.
|
|
103
103
|
*/
|
|
104
104
|
request<M extends Method, P extends Params, Q extends Query, B extends Body, R extends Result>(url: string, options: Options<M, P, Q, B>): Promise<Response<R>>;
|
|
105
105
|
/**
|
|
106
|
-
* Выполнить GET запрос на
|
|
106
|
+
* Выполнить GET запрос на сервер.
|
|
107
107
|
*
|
|
108
108
|
* Дженерик:
|
|
109
|
-
* Params - параметры, которые будут подставлены в шаблон
|
|
110
|
-
* Query - параметры, которые будут преобразованы в строку
|
|
111
|
-
* Result - ожидаемый результат выполнения
|
|
109
|
+
* Params - параметры, которые будут подставлены в шаблон пути.
|
|
110
|
+
* Query - параметры, которые будут преобразованы в строку запроса.
|
|
111
|
+
* Result - ожидаемый результат выполнения запроса.
|
|
112
112
|
*
|
|
113
|
-
* @param { string } url - адрес
|
|
114
|
-
* @param { GetOptions<Params, Query> } options - параметры GET
|
|
113
|
+
* @param { string } url - адрес запроса.
|
|
114
|
+
* @param { GetOptions<Params, Query> } options - параметры GET запроса.
|
|
115
115
|
*/
|
|
116
116
|
get<P extends Params, Q extends Query, R extends Result>(url: string, options: GetOptions<P, Q>): Promise<R>;
|
|
117
117
|
/**
|
|
118
|
-
* Выполнить POST запрос на
|
|
118
|
+
* Выполнить POST запрос на сервер.
|
|
119
119
|
*
|
|
120
120
|
* Дженерик:
|
|
121
|
-
* Params - параметры, которые будут подставлены в шаблон
|
|
122
|
-
* Query - параметры, которые будут преобразованы в строку
|
|
123
|
-
* Body - тело
|
|
124
|
-
* Result - ожидаемый результат выполнения
|
|
121
|
+
* Params - параметры, которые будут подставлены в шаблон пути.
|
|
122
|
+
* Query - параметры, которые будут преобразованы в строку запроса.
|
|
123
|
+
* Body - тело запроса.
|
|
124
|
+
* Result - ожидаемый результат выполнения запроса.
|
|
125
125
|
*
|
|
126
|
-
* @param { string } url - адрес
|
|
127
|
-
* @param { PostOptions<Params, Query, Body> } options - параметры POST
|
|
126
|
+
* @param { string } url - адрес запроса.
|
|
127
|
+
* @param { PostOptions<Params, Query, Body> } options - параметры POST запроса.
|
|
128
128
|
*/
|
|
129
129
|
post<P extends Params, Q extends Query, B extends Body, R extends Result>(url: string, options: PostOptions<P, Q, B>): Promise<R>;
|
|
130
130
|
/**
|
|
131
|
-
* Выполнить PUT запрос на
|
|
131
|
+
* Выполнить PUT запрос на сервер.
|
|
132
132
|
*
|
|
133
133
|
* Дженерик:
|
|
134
|
-
* Params - параметры, которые будут подставлены в шаблон
|
|
135
|
-
* Query - параметры, которые будут преобразованы в строку
|
|
136
|
-
* Body - тело
|
|
137
|
-
* Result - ожидаемый результат выполнения
|
|
134
|
+
* Params - параметры, которые будут подставлены в шаблон пути.
|
|
135
|
+
* Query - параметры, которые будут преобразованы в строку запроса.
|
|
136
|
+
* Body - тело запроса.
|
|
137
|
+
* Result - ожидаемый результат выполнения запроса.
|
|
138
138
|
*
|
|
139
|
-
* @param { string } url - адрес
|
|
140
|
-
* @param { PutOptions<Params, Query, Body> } options - параметры PUT
|
|
139
|
+
* @param { string } url - адрес запроса.
|
|
140
|
+
* @param { PutOptions<Params, Query, Body> } options - параметры PUT запроса.
|
|
141
141
|
*/
|
|
142
142
|
put<P extends Params, Q extends Query, B extends Body, R extends Result>(url: string, options: PutOptions<P, Q, B>): Promise<R>;
|
|
143
143
|
/**
|
|
144
|
-
* Выполнить PATCH запрос на
|
|
144
|
+
* Выполнить PATCH запрос на сервер.
|
|
145
145
|
*
|
|
146
146
|
* Дженерик:
|
|
147
|
-
* Params - параметры, которые будут подставлены в шаблон
|
|
148
|
-
* Query - параметры, которые будут преобразованы в строку
|
|
149
|
-
* Body - тело
|
|
150
|
-
* Result - ожидаемый результат выполнения
|
|
147
|
+
* Params - параметры, которые будут подставлены в шаблон пути.
|
|
148
|
+
* Query - параметры, которые будут преобразованы в строку запроса.
|
|
149
|
+
* Body - тело запроса.
|
|
150
|
+
* Result - ожидаемый результат выполнения запроса.
|
|
151
151
|
*
|
|
152
|
-
* @param { string } url - адрес
|
|
153
|
-
* @param { PatchOptions<Params, Query, Body> } options - параметры PATCH
|
|
152
|
+
* @param { string } url - адрес запроса.
|
|
153
|
+
* @param { PatchOptions<Params, Query, Body> } options - параметры PATCH запроса.
|
|
154
154
|
*/
|
|
155
155
|
patch<P extends Params, Q extends Query, B extends Body, R extends Result>(url: string, options: PatchOptions<P, Q, B>): Promise<R>;
|
|
156
156
|
/**
|
|
157
|
-
* Выполнить DELETE запрос на
|
|
157
|
+
* Выполнить DELETE запрос на сервер.
|
|
158
158
|
*
|
|
159
159
|
* Дженерик:
|
|
160
|
-
* Params - параметры, которые будут подставлены в шаблон
|
|
161
|
-
* Query - параметры, которые будут преобразованы в строку
|
|
162
|
-
* Body - тело
|
|
163
|
-
* Result - ожидаемый результат выполнения
|
|
160
|
+
* Params - параметры, которые будут подставлены в шаблон пути.
|
|
161
|
+
* Query - параметры, которые будут преобразованы в строку запроса.
|
|
162
|
+
* Body - тело запроса.
|
|
163
|
+
* Result - ожидаемый результат выполнения запроса.
|
|
164
164
|
*
|
|
165
|
-
* @param { string } url - адрес
|
|
166
|
-
* @param { DeleteOptions<Params, Query, Body> } options - параметры DELETE
|
|
165
|
+
* @param { string } url - адрес запроса.
|
|
166
|
+
* @param { DeleteOptions<Params, Query, Body> } options - параметры DELETE запроса.
|
|
167
167
|
*/
|
|
168
168
|
delete<P extends Params, Q extends Query, B extends Body, R extends Result>(url: string, options: DeleteOptions<P, Q, B>): Promise<R>;
|
|
169
169
|
}
|
|
@@ -1,105 +1,105 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Класс описывающий ошибку связанную с модулем HttpClient
|
|
2
|
+
* Класс описывающий ошибку связанную с модулем HttpClient.
|
|
3
3
|
*/
|
|
4
4
|
export declare class HttpClientError extends Error {
|
|
5
5
|
readonly name: string;
|
|
6
6
|
/**
|
|
7
|
-
* Статус
|
|
7
|
+
* Статус ошибки.
|
|
8
8
|
*/
|
|
9
9
|
readonly status: number;
|
|
10
10
|
/**
|
|
11
|
-
* Детали
|
|
11
|
+
* Детали ошибки.
|
|
12
12
|
*/
|
|
13
13
|
readonly details: string | null;
|
|
14
14
|
constructor(message: string, status: number, details: string | null);
|
|
15
15
|
}
|
|
16
16
|
/**
|
|
17
|
-
* Класс описывающий внутреннюю ошибку связанную с модулем HttpClient
|
|
17
|
+
* Класс описывающий внутреннюю ошибку связанную с модулем HttpClient.
|
|
18
18
|
*/
|
|
19
19
|
export declare class InternalError extends HttpClientError {
|
|
20
20
|
readonly name: string;
|
|
21
21
|
constructor(message: string, details: string | null);
|
|
22
22
|
}
|
|
23
23
|
/**
|
|
24
|
-
* Класс описывающий неизвестную
|
|
24
|
+
* Класс описывающий неизвестную ошибку.
|
|
25
25
|
*/
|
|
26
26
|
export declare class UnknownError extends HttpClientError {
|
|
27
27
|
constructor(code: number, details: string);
|
|
28
28
|
}
|
|
29
29
|
/**
|
|
30
|
-
* Класс описывающий ошибку "Плохой запрос"
|
|
31
|
-
* Это означает, что сервер не понимает запрос из-за неверного
|
|
30
|
+
* Класс описывающий ошибку "Плохой запрос".
|
|
31
|
+
* Это означает, что сервер не понимает запрос из-за неверного синтаксиса.
|
|
32
32
|
*/
|
|
33
33
|
export declare class BadRequestError extends HttpClientError {
|
|
34
34
|
constructor(details: string);
|
|
35
35
|
}
|
|
36
36
|
/**
|
|
37
|
-
* Класс описывающий ошибку "Не авторизовано"
|
|
38
|
-
* Это означает. что для получения запрашиваемого ответа нужна
|
|
37
|
+
* Класс описывающий ошибку "Не авторизовано".
|
|
38
|
+
* Это означает. что для получения запрашиваемого ответа нужна аутентификация.
|
|
39
39
|
*/
|
|
40
40
|
export declare class UnauthorizedError extends HttpClientError {
|
|
41
41
|
constructor(details: string);
|
|
42
42
|
}
|
|
43
43
|
/**
|
|
44
|
-
* Класс описывающий ошибку "Запрещено"
|
|
45
|
-
* Это означает, что у клиента нет прав доступа к
|
|
44
|
+
* Класс описывающий ошибку "Запрещено".
|
|
45
|
+
* Это означает, что у клиента нет прав доступа к содержимому.
|
|
46
46
|
*/
|
|
47
47
|
export declare class ForbiddenError extends HttpClientError {
|
|
48
48
|
constructor(details: string);
|
|
49
49
|
}
|
|
50
50
|
/**
|
|
51
|
-
* Класс описывающий ошибку "Не найден"
|
|
52
|
-
* Это означает, что сервер не может найти запрашиваемый
|
|
51
|
+
* Класс описывающий ошибку "Не найден".
|
|
52
|
+
* Это означает, что сервер не может найти запрашиваемый ресурс.
|
|
53
53
|
*/
|
|
54
54
|
export declare class NotFoundError extends HttpClientError {
|
|
55
55
|
constructor(details: string);
|
|
56
56
|
}
|
|
57
57
|
/**
|
|
58
|
-
* Класс описывающий ошибку "Метод не доступен"
|
|
59
|
-
* Это означает, что серверу известен запрос, но он был отключен и не может быть
|
|
58
|
+
* Класс описывающий ошибку "Метод не доступен".
|
|
59
|
+
* Это означает, что серверу известен запрос, но он был отключен и не может быть использован.
|
|
60
60
|
*/
|
|
61
61
|
export declare class MethodNotAllowedError extends HttpClientError {
|
|
62
62
|
constructor(details: string);
|
|
63
63
|
}
|
|
64
64
|
/**
|
|
65
|
-
* Класс описывающий ошибку "Медиа формат не поддерживается сервером"
|
|
66
|
-
* Это означает, что сервер не поддерживает медиа формат запрашиваемых
|
|
65
|
+
* Класс описывающий ошибку "Медиа формат не поддерживается сервером".
|
|
66
|
+
* Это означает, что сервер не поддерживает медиа формат запрашиваемых данных.
|
|
67
67
|
*/
|
|
68
68
|
export declare class UnsupportedMediaTypeError extends HttpClientError {
|
|
69
69
|
constructor(details: string);
|
|
70
70
|
}
|
|
71
71
|
/**
|
|
72
|
-
* Класс описывающий ошибку "Сервер не может обработать запрос"
|
|
73
|
-
* Это означает, что сервер понимает тип содержимого в теле
|
|
74
|
-
* и синтаксис запроса является корректным, но серверу не удалось обработать инструкции
|
|
72
|
+
* Класс описывающий ошибку "Сервер не может обработать запрос".
|
|
73
|
+
* Это означает, что сервер понимает тип содержимого в теле запроса.
|
|
74
|
+
* и синтаксис запроса является корректным, но серверу не удалось обработать инструкции содержимого.
|
|
75
75
|
*/
|
|
76
76
|
export declare class UnprocessableEntityError extends HttpClientError {
|
|
77
77
|
constructor(details: string);
|
|
78
78
|
}
|
|
79
79
|
/**
|
|
80
|
-
* Класс описывающий ошибку "Внутренняя ошибка сервера"
|
|
81
|
-
* Это означает, что сервер столкнулся с ситуацией, которую он не знает как
|
|
80
|
+
* Класс описывающий ошибку "Внутренняя ошибка сервера".
|
|
81
|
+
* Это означает, что сервер столкнулся с ситуацией, которую он не знает как обработать.
|
|
82
82
|
*/
|
|
83
83
|
export declare class InternalServerError extends HttpClientError {
|
|
84
84
|
constructor(details: string);
|
|
85
85
|
}
|
|
86
86
|
/**
|
|
87
|
-
* Класс описывающий ошибку "Плохой шлюз"
|
|
88
|
-
* Это означает, что сервер действует как шлюз
|
|
87
|
+
* Класс описывающий ошибку "Плохой шлюз".
|
|
88
|
+
* Это означает, что сервер действует как шлюз и получил недопустимый ответ.
|
|
89
89
|
*/
|
|
90
90
|
export declare class BadGatewayError extends HttpClientError {
|
|
91
91
|
constructor(details: string);
|
|
92
92
|
}
|
|
93
93
|
/**
|
|
94
|
-
* Класс описывающий ошибку "Сервис недоступен"
|
|
95
|
-
* Это означает, что сервер не готов обрабатывать
|
|
94
|
+
* Класс описывающий ошибку "Сервис недоступен".
|
|
95
|
+
* Это означает, что сервер не готов обрабатывать запрос.
|
|
96
96
|
*/
|
|
97
97
|
export declare class ServiceUnavailableError extends HttpClientError {
|
|
98
98
|
constructor(details: string);
|
|
99
99
|
}
|
|
100
100
|
/**
|
|
101
|
-
* Класс описывающий ошибку "Вышло время ожидания ответа"
|
|
102
|
-
* Это означает, что сервер действует как шлюз и не может получить ответ
|
|
101
|
+
* Класс описывающий ошибку "Вышло время ожидания ответа".
|
|
102
|
+
* Это означает, что сервер действует как шлюз и не может получить ответ вовремя.
|
|
103
103
|
*/
|
|
104
104
|
export declare class GatewayTimeoutError extends HttpClientError {
|
|
105
105
|
constructor(details: string);
|