diff --git a/src/lib/apiClient.ts b/src/lib/apiClient.ts index 97287b0c..fc6186ab 100644 --- a/src/lib/apiClient.ts +++ b/src/lib/apiClient.ts @@ -12,6 +12,7 @@ type RequestOptions = { params?: Record; body?: any; timeout?: number; + responseType?: AxiosRequestConfig["responseType"]; raise_error?: boolean; // default: true }; @@ -163,12 +164,14 @@ class ApiClient { headers, params, timeout, + responseType, raise_error = true, }: RequestOptions): Promise> { const config: AxiosRequestConfig = { headers, params, timeout, + responseType, httpsAgent: this.axiosAgent, }; return this.requestWrapper( diff --git a/src/tools/automate-utils/fetch-screenshots.ts b/src/tools/automate-utils/fetch-screenshots.ts index 5574f0bc..935ec4a0 100644 --- a/src/tools/automate-utils/fetch-screenshots.ts +++ b/src/tools/automate-utils/fetch-screenshots.ts @@ -59,7 +59,10 @@ async function convertUrlsToBase64( ): Promise> { const screenshots = await Promise.all( urls.map(async (url) => { - const response = await apiClient.get({ url }); + const response = await apiClient.get({ + url, + responseType: "arraybuffer" + }); // Axios returns response.data as a Buffer for binary data const base64 = Buffer.from(response.data).toString("base64");