Flutter中CoinGeckoApi无响应 代币图片加载失败求助
代币图片显示异常解决思路
问题情况
之前代币图片能正常显示,最近几天突然显示错误。
相关代码
FutureBuilder( future: getCoinDataDogeCoin(), builder: (context, AsyncSnapshot<CoinGeckoResult<prefix.Coin?>> snapshot) { return (snapshot.hasData) ? Center( child: Image.network("${snapshot.data!.data!.image!.small}"), ) : CircularProgressIndicator(); }),
错误截图
排查建议
- 先验证接口返回的图片链接:调用
getCoinDataDogeCoin()后,取出image.small对应的URL,直接复制到浏览器打开,看是否能正常加载图片。大概率是CoinGecko接口调整了图片字段或URL格式,导致链接失效。 - 补全空安全判断:代码里连续用
!强制解包,只要data、image或small任意一个为空,就会引发加载异常。改成以下写法规避空值问题:
return (snapshot.hasData && snapshot.data!.data != null && snapshot.data!.data!.image != null && snapshot.data!.data!.image!.small != null) ? Center( child: Image.network(snapshot.data!.data!.image!.small!), ) : CircularProgressIndicator();
- 检查网络与缓存:确认应用拥有网络访问权限,同时清理应用缓存,排除旧缓存导致的加载异常。
内容的提问来源于stack exchange,提问作者mary
相关产品推荐
相关产品推荐

