Skip to content

Commit

Permalink
handle network error when fetch token lists
Browse files Browse the repository at this point in the history
  • Loading branch information
xcaptain committed May 29, 2024
1 parent 659d627 commit b78fb3e
Showing 1 changed file with 24 additions and 10 deletions.
34 changes: 24 additions & 10 deletions NftApi.cs
Original file line number Diff line number Diff line change
Expand Up @@ -291,12 +291,19 @@ public async Task<IList<UserNftBase>> GetUserNftBases(string userAddress, long c
{
return container.CachedNfts;
}
var client = GetApiClient(chainId);
if (client is not null)
try
{
var client = GetApiClient(chainId);
if (client is not null)
{
var metadatas = await client.GetUserNftBase(userAddress, chainId);
container.CachedNfts = metadatas;
return metadatas;
}
}
catch (Exception e)
{
var metadatas = await client.GetUserNftBase(userAddress, chainId);
container.CachedNfts = metadatas;
return metadatas;
logger.LogWarning("get user nft failed, user: {}, chainId: {}, error: {}", userAddress, chainId, e.Message);
}
return [];
}
Expand All @@ -308,12 +315,19 @@ public async Task<IList<UserNftBase>> GetContractNftBase(string contractAddress,
{
return cachedTokens;
}
var client = GetApiClient(chainId);
if (client is not null)
try
{
var client = GetApiClient(chainId);
if (client is not null)
{
var metadatas = await client.GetContractNftBase(contractAddress, chainId);
container.SetContractNfts(contractAddress, metadatas);
return metadatas;
}
}
catch (Exception e)
{
var metadatas = await client.GetContractNftBase(contractAddress, chainId);
container.SetContractNfts(contractAddress, metadatas);
return metadatas;
logger.LogWarning("get contract nft failed, contract: {}, chainId: {}, error: {}", contractAddress, chainId, e.Message);
}
return [];
}
Expand Down

0 comments on commit b78fb3e

Please sign in to comment.