以下代码在我的请求中失败了, 我已经尝试清理node_modules并再次安装依赖项
try {
const response = await request(reqOptions) // Error Highlighting `reqOptions`;
this.products = _.concat(this.products, response.products);
if(response.nextPage){
return this.getProductsCatalog(response.nextPage);
} else {
return Promise.resolve(this.products);
}
} catch(err) {
logger.error(err);
return Promise.reject(err);
}
错误
没有重载匹配此调用。 重载3之1,'(uri:字符串,选项?:RequestPromiseOptions,回调?:RequestCallback):RequestPromise',出现以下错误。 类型'{标题的参数:{'content-type':字符串; }; }'不可分配给'string'类型的参数。 重载2之3,'(uri:字符串,回调?:RequestCallback):RequestPromise',出现以下错误。 类型'{标题的参数:{'content-type':字符串; }; }'不可分配给'string'类型的参数。 重载3之3,'((选项:(UriOptions&RequestPromiseOptions)|(UrlOptions&RequestPromiseOptions),回调?:RequestCallback):RequestPromise <...>'产生以下错误。 类型'{标题的参数:{'content-type':字符串; }; }'不可分配给'(UriOptions&RequestPromiseOptions)类型的参数| (UrlOptions&RequestPromiseOptions)”。 输入'{headers:{'content-type':string; }; }”不能分配给“ UrlOptions&RequestPromiseOptions”类型。 类型'{标题中缺少属性'url':{'content-type':string; };
整个功能
async getProductsCatalog(url: string): Promise<Product[]>{
if(url === null) {
this.products = [];;
return this.sendGetRequest('/v1/catalog/products',
{
pageSize: 40
}
)
.then((res) => JSON.parse(res))
.then((res) => {
const response: ProductCatalogResponse = res;
this.products = _.concat(this.products, response.products)
if(response.nextPage) {
return this.getProductsCatalog(response.nextPage);
} else {
return Promise.resolve(this.products);
}
});
} else {
let reqOptions = {
headers: {
'content-type': 'application/json'
}
};
this.visitRequest(reqOptions, 'GET', url, {pageSize: 40}, false)
try {
const response = await request(reqOptions);
this.products = _.concat(this.products, response.products);
if(response.nextPage){
return this.getProductsCatalog(response.nextPage);
} else {
return Promise.resolve(this.products);
}
} catch(err) {
logger.error(err);
return Promise.reject(err);
}
}
}