# Request 模块支持自定义转换器
自定义转换器实现对每一个请求数据转换
最佳使用方式:
- use Typescript 实现
import { IBaseConverter } from "@tencent/slug-request";
class CustomConvert implements BaseConverter {
convert<R extends object = {}>(type: ApiTypes.HttpDataSource, data: any | JSONData): ApiTypes.ApiBaseResult<R> {
// do something
}
}
- use javascript
class CustomConvert {
convert(type, data) {
// do something
return {
// 返回 response data
}
}
}
import { slugRequest } from "@tencent/slug-request";
const config2: ApiTypes.HttpRequestConfig = {
baseUrl: 'https://test.game.qq.com',
path: '/wmp/v3.1/public/searchNews.php',
query: {
p1: 1,
},
source: 'v4',
type: 'api',
method: 'POST',
underlizeQuery: false,
converter: new CustomConvert()
}
interface ResponseData {
username: string;
avatar: string;
}
export async function requestV4Detail() {
return slugRequest<ResponseData>(config2);
}
注意: 转换器转换函数必须保持统一的数据格式返回