From b3eb3a7371e6a3f28dd552f613a9c25267d66106 Mon Sep 17 00:00:00 2001 From: N08I40K Date: Tue, 18 Mar 2025 00:21:52 +0400 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=B1=D1=85=D0=BE=D0=B4=20=D0=B1=D0=B0?= =?UTF-8?q?=D0=BD=D0=B0=20=D1=81=D0=BE=20=D1=81=D1=82=D0=BE=D1=80=D0=BE?= =?UTF-8?q?=D0=BD=D1=8B=20=D1=81=D0=B0=D0=B9=D1=82=D0=B0=20=D0=BF=D0=BE?= =?UTF-8?q?=D0=BB=D0=B8=D1=82=D0=B5=D1=85=D0=BD=D0=B8=D0=BA=D1=83=D0=BC?= =?UTF-8?q?=D0=B0=20=D0=BF=D1=83=D1=82=D1=91=D0=BC=20=D0=BF=D0=BE=D0=B4?= =?UTF-8?q?=D0=BC=D0=B5=D0=BD=D1=8B=20User-Agent.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/contants.ts | 4 ++++ .../internal/xls-downloader/basic-xls-downloader.ts | 12 ++++++++++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/contants.ts b/src/contants.ts index 86ef21c..c89e16d 100644 --- a/src/contants.ts +++ b/src/contants.ts @@ -23,6 +23,10 @@ export const vkIdConstants = { "-----END PUBLIC KEY-----", }; +export const axiosConstants = { + userAgent: process.env.USER_AGENT, +}; + export const jwtConstants = { secret: process.env.JWT_SECRET, }; diff --git a/src/schedule/internal/xls-downloader/basic-xls-downloader.ts b/src/schedule/internal/xls-downloader/basic-xls-downloader.ts index bb69d3f..c249530 100644 --- a/src/schedule/internal/xls-downloader/basic-xls-downloader.ts +++ b/src/schedule/internal/xls-downloader/basic-xls-downloader.ts @@ -8,6 +8,7 @@ import { NotAcceptableException, ServiceUnavailableException, } from "@nestjs/common"; +import { axiosConstants } from "../../../contants"; export class BasicXlsDownloader implements XlsDownloaderInterface { private url: string | null = null; @@ -35,9 +36,16 @@ export class BasicXlsDownloader implements XlsDownloaderInterface { url: string, head: boolean, ): Promise { + const requestHeaders = { + "User-Agent": axiosConstants.userAgent, + }; + const response = await (head - ? axios.head(url) - : axios.get(url, { responseType: "arraybuffer" })); + ? axios.head(url, { headers: requestHeaders }) + : axios.get(url, { + responseType: "arraybuffer", + headers: requestHeaders, + })); if (response.status !== 200) { console.error(`${response.status} ${response.statusText}`);