feat(@vben/request): export basic HttpResponse generic (#4697)
parent
625862e082
commit
88d2b3e569
|
@ -1,6 +1,7 @@
|
|||
import type { AxiosRequestConfig, AxiosResponse } from 'axios';
|
||||
import type { AxiosRequestConfig } from 'axios';
|
||||
|
||||
import type { RequestClient } from '../request-client';
|
||||
import type { RequestResponse } from '../types';
|
||||
|
||||
class FileDownloader {
|
||||
private client: RequestClient;
|
||||
|
@ -12,13 +13,13 @@ class FileDownloader {
|
|||
public async download(
|
||||
url: string,
|
||||
config?: AxiosRequestConfig,
|
||||
): Promise<AxiosResponse<Blob>> {
|
||||
): Promise<RequestResponse<Blob>> {
|
||||
const finalConfig: AxiosRequestConfig = {
|
||||
...config,
|
||||
responseType: 'blob',
|
||||
};
|
||||
|
||||
const response = await this.client.get<AxiosResponse<Blob>>(
|
||||
const response = await this.client.get<RequestResponse<Blob>>(
|
||||
url,
|
||||
finalConfig,
|
||||
);
|
||||
|
|
|
@ -4,6 +4,8 @@ import type {
|
|||
InternalAxiosRequestConfig,
|
||||
} from 'axios';
|
||||
|
||||
type RequestResponse<T = any> = AxiosResponse<T>;
|
||||
|
||||
type RequestContentType =
|
||||
| 'application/json;charset=utf-8'
|
||||
| 'application/octet-stream;charset=utf-8'
|
||||
|
@ -46,5 +48,6 @@ export type {
|
|||
RequestClientOptions,
|
||||
RequestContentType,
|
||||
RequestInterceptorConfig,
|
||||
RequestResponse,
|
||||
ResponseInterceptorConfig,
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue