You've already forked tf2wikipricing
fix: stronger error handling in fetchPrice
This commit is contained in:
@@ -51,7 +51,7 @@ export async function fetchPrice(token: string, sku: string, update: Date = new
|
|||||||
|
|
||||||
if (!data || data.sku != sku || 'update' in data && 'ttl' in data && Date.now() > (new Date(data.update).getTime() + data.ttl)) {
|
if (!data || data.sku != sku || 'update' in data && 'ttl' in data && Date.now() > (new Date(data.update).getTime() + data.ttl)) {
|
||||||
logDebug(`Fetching price data for ${sku}`)
|
logDebug(`Fetching price data for ${sku}`)
|
||||||
if(!token) {
|
if(!token || token === '') {
|
||||||
throw new Error('No token provided')
|
throw new Error('No token provided')
|
||||||
}
|
}
|
||||||
data = new ItemPriceData()
|
data = new ItemPriceData()
|
||||||
@@ -64,14 +64,15 @@ export async function fetchPrice(token: string, sku: string, update: Date = new
|
|||||||
if(__ENV_USERSCRIPT) {
|
if(__ENV_USERSCRIPT) {
|
||||||
response = await priceUsingPricesTF(token, sku)
|
response = await priceUsingPricesTF(token, sku)
|
||||||
} else {
|
} else {
|
||||||
response = JSON.parse(await chrome.runtime.sendMessage({contentScriptQuery: "priceSKU", service: "prices.tf", sku: sku, token: token}));
|
response = await chrome.runtime.sendMessage({contentScriptQuery: "priceSKU", service: "prices.tf", sku: sku, token: token});
|
||||||
|
}
|
||||||
|
if (!response || response instanceof Error) {
|
||||||
|
throw new Error(`Bad response: ${response}`)
|
||||||
}
|
}
|
||||||
if (response) {
|
|
||||||
data.keys = response.keys
|
data.keys = response.keys
|
||||||
data.metal = response.metal
|
data.metal = response.metal
|
||||||
}
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
throw new Error(`Received ${error} error while pricing ${sku} using prices.tf`)
|
throw new Error(`Received "${error}" error while pricing ${sku} using prices.tf`)
|
||||||
}
|
}
|
||||||
|
|
||||||
if ('metal' in data && 'keys' in data) {
|
if ('metal' in data && 'keys' in data) {
|
||||||
|
|||||||
Reference in New Issue
Block a user