You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Swift中如何过滤API数据并在TableView展示(仅美股企业)

解决Finnhub Symbol Lookup API筛选美国股票数据的问题

核心解决方案

直接利用Finnhub API返回数据中的exchange字段做筛选,该字段会明确标注股票所属交易所,比通过错误信息过滤精准得多。只需判断该字段是否属于美国主流交易所标识即可。

代码修改示例

以下是关键逻辑的代码调整(以Swift为例,其他语言逻辑通用):

1. 数据模型定义

struct StockSymbol: Codable {
    let symbol: String
    let description: String
    let exchange: String // 新增交易所字段,用于筛选
}

2. 解析后筛选美国市场数据

// 假设已完成API请求与JSON解析,得到全量数据
let allSymbols: [StockSymbol] = 解析后的数据源

// 筛选美国主要交易所的数据,可根据需求补充其他美国交易所代码
let usStockSymbols = allSymbols.filter {
    ["US", "NYSE", "NASDAQ", "AMEX"].contains($0.exchange.uppercased())
}

// 将筛选后的数据赋值给TableView数据源并刷新
yourTableViewDataSource = usStockSymbols
yourTableView.reloadData()

排查要点

  • 统一字段大小写:部分返回的exchange值可能是小写,用uppercased()转换后再判断避免遗漏
  • 确认API返回字段:先打印全量数据的exchange值,确认美国市场的标识是否在你的筛选列表内
  • 检查API权限:确保你的Finnhub API Key有权限访问Symbol Lookup接口

内容的提问来源于stack exchange,提问作者French Marigold

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 16:30:43