laravel-request 1.1.39 → 1.1.40

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/src/Api.js +60 -46
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "laravel-request",
3
3
  "productName": "laravel-request",
4
- "version": "1.1.39",
4
+ "version": "1.1.40",
5
5
  "description": "laravel-request",
6
6
  "main": "src/index.js",
7
7
  "module": "src/index.js",
package/src/Api.js CHANGED
@@ -202,54 +202,10 @@ export default class Api {
202
202
  switch (method)
203
203
  {
204
204
  case 'GET':
205
- let query = Api.encodeQueryString(data);
206
-
207
- if(query.length > 5000)
208
- {
209
- //replace to POST if GET url is too long
210
- data._method = 'GET';
211
-
212
- let request = {
213
- url: url,
214
- method: 'PUT',//post не будет работать
215
- data: data,
216
- headers: headers
217
- }
218
-
219
- Api.logRequest(request);
220
- response = await axios.request(request);
221
-
222
- }else{
223
- data.timestamp = new Date().getTime();
224
-
225
- let request = {
226
- url: url,
227
- method: method,
228
- params: data,
229
- headers: headers
230
- }
231
-
232
- Api.logRequest(request);
233
-
234
- response = await axios.request(request);
235
- }
236
-
237
-
205
+ response = await Api.handleGetRequest({ url, data, headers });
238
206
  break;
239
207
  default:
240
- params.timestamp = new Date().getTime();
241
-
242
- let request = {
243
- url: url,
244
- method: method,
245
- data: data,
246
- params: params,
247
- headers: headers
248
- }
249
-
250
- Api.logRequest(request);
251
-
252
- response = await axios.request(request);
208
+ response = await Api.handleDefaultRequest({ url, method, data, params, headers });
253
209
  break;
254
210
  }
255
211
 
@@ -294,4 +250,62 @@ export default class Api {
294
250
  }
295
251
  }
296
252
  }
253
+
254
+ /**
255
+ *
256
+ * @param url
257
+ * @param data
258
+ * @param headers
259
+ * @return {Promise<AxiosResponse<any>>}
260
+ */
261
+ static async handleGetRequest({ url, data, headers }) {
262
+ let query = Api.encodeQueryString(data);
263
+ let response;
264
+
265
+ if (query.length > 5000) {
266
+ data._method = 'GET';
267
+ let request = {
268
+ url: url,
269
+ method: 'POST',
270
+ data: data,
271
+ headers: headers
272
+ };
273
+ Api.logRequest(request);
274
+ response = await axios.request(request);
275
+ } else {
276
+ data.timestamp = new Date().getTime();
277
+ let request = {
278
+ url: url,
279
+ method: 'GET',
280
+ params: data,
281
+ headers: headers
282
+ };
283
+ Api.logRequest(request);
284
+ response = await axios.request(request);
285
+ }
286
+
287
+ return response;
288
+ }
289
+
290
+ /**
291
+ *
292
+ * @param url
293
+ * @param method
294
+ * @param data
295
+ * @param params
296
+ * @param headers
297
+ * @return {Promise<AxiosResponse<any>>}
298
+ */
299
+ static async handleDefaultRequest({ url, method, data, params, headers }) {
300
+ params.timestamp = new Date().getTime();
301
+ let request = {
302
+ url: url,
303
+ method: method,
304
+ data: data,
305
+ params: params,
306
+ headers: headers
307
+ };
308
+ Api.logRequest(request);
309
+ return await axios.request(request);
310
+ }
297
311
  }